ANCOVA in Writing (TDE)
(Writing (TDE))
Geiser C. Challco geiser@alumni.usp.br
NOTE:
- Teste ANCOVA para determinar se houve diferenças significativas no
Writing (TDE) (medido usando pre- e pos-testes).
- ANCOVA test to determine whether there were significant differences
in Writing (TDE) (measured using pre- and post-tests).
Setting Initial Variables
dv = "score.tde"
dv.pos = "score.tde.pos"
dv.pre = "score.tde.pre"
fatores2 <- c("Sexo","Zona","Cor.Raca","Serie","score.tde.quintile")
lfatores2 <- as.list(fatores2)
names(lfatores2) <- fatores2
fatores1 <- c("grupo", fatores2)
lfatores1 <- as.list(fatores1)
names(lfatores1) <- fatores1
lfatores <- c(lfatores1)
color <- list()
color[["prepost"]] = c("#ffee65","#f28e2B")
color[["grupo"]] = c("#bcbd22","#008000")
color[["Sexo"]] = c("#FF007F","#4D4DFF")
color[["Zona"]] = c("#AA00FF","#00CCCC")
color[["Cor.Raca"]] = c(
"Parda"="#b97100","Indígena"="#9F262F",
"Branca"="#87c498", "Preta"="#848283","Amarela"="#D6B91C"
)
level <- list()
level[["grupo"]] = c("Controle","Experimental")
level[["Sexo"]] = c("F","M")
level[["Zona"]] = c("Rural","Urbana")
level[["Cor.Raca"]] = c("Parda","Indígena","Branca", "Preta","Amarela")
level[["Serie"]] = c("6 ano","7 ano","8 ano","9 ano")
# ..
ymin <- 0
ymax <- 0
ymin.ci <- 0
ymax.ci <- 0
color[["grupo:Sexo"]] = c(
"Controle:F"="#ff99cb", "Controle:M"="#b7b7ff",
"Experimental:F"="#FF007F", "Experimental:M"="#4D4DFF",
"Controle.F"="#ff99cb", "Controle.M"="#b7b7ff",
"Experimental.F"="#FF007F", "Experimental.M"="#4D4DFF"
)
color[["grupo:Zona"]] = c(
"Controle:Rural"="#b2efef","Controle:Urbana"="#e5b2ff",
"Experimental:Rural"="#00CCCC", "Experimental:Urbana"="#AA00FF",
"Controle.Rural"="#b2efef","Controle.Urbana"="#e5b2ff",
"Experimental.Rural"="#00CCCC", "Experimental.Urbana"="#AA00FF"
)
color[["grupo:Cor.Raca"]] = c(
"Controle:Parda"="#e3c699", "Experimental:Parda"="#b97100",
"Controle:Indígena"="#e2bdc0", "Experimental:Indígena"="#9F262F",
"Controle:Branca"="#c0e8cb", "Experimental:Branca"="#87c498",
"Controle:Preta"="#dad9d9", "Experimental:Preta"="#848283",
"Controle:Amarela"="#eee3a4", "Experimental:Amarela"="#D6B91C",
"Controle.Parda"="#e3c699", "Experimental.Parda"="#b97100",
"Controle.Indígena"="#e2bdc0", "Experimental.Indígena"="#9F262F",
"Controle.Branca"="#c0e8cb", "Experimental.Branca"="#87c498",
"Controle.Preta"="#dad9d9", "Experimental.Preta"="#848283",
"Controle.Amarela"="#eee3a4", "Experimental.Amarela"="#D6B91C"
)
for (coln in c("vocab","vocab.teach","vocab.non.teach","score.tde",
"TFL.lidas.per.min","TFL.corretas.per.min","TFL.erradas.per.min","TFL.omitidas.per.min",
"leitura.compreensao")) {
color[[paste0(coln,".quintile")]] = c("#BF0040","#FF0000","#800080","#0000FF","#4000BF")
level[[paste0(coln,".quintile")]] = c("1st quintile","2nd quintile","3rd quintile","4th quintile","5th quintile")
color[[paste0("grupo:",coln,".quintile")]] = c(
"Experimental.1st quintile"="#BF0040", "Controle.1st quintile"="#d8668c",
"Experimental.2nd quintile"="#FF0000", "Controle.2nd quintile"="#ff7f7f",
"Experimental.3rd quintile"="#8fce00", "Controle.3rd quintile"="#ddf0b2",
"Experimental.4th quintile"="#0000FF", "Controle.4th quintile"="#b2b2ff",
"Experimental.5th quintile"="#4000BF", "Controle.5th quintile"="#b299e5",
"Experimental:1st quintile"="#BF0040", "Controle:1st quintile"="#d8668c",
"Experimental:2nd quintile"="#FF0000", "Controle:2nd quintile"="#ff7f7f",
"Experimental:3rd quintile"="#8fce00", "Controle:3rd quintile"="#ddf0b2",
"Experimental:4th quintile"="#0000FF", "Controle:4th quintile"="#b2b2ff",
"Experimental:5th quintile"="#4000BF", "Controle:5th quintile"="#b299e5")
}
gdat <- read_excel("../data/data.xlsx", sheet = "sumary")
gdat <- gdat[which(is.na(gdat$Necessidade.Deficiencia) & !is.na(gdat$WG.Grupo)),]
dat <- gdat
dat$grupo <- factor(dat[["WG.Grupo"]], level[["grupo"]])
for (coln in c(names(lfatores))) {
dat[[coln]] <- factor(dat[[coln]], level[[coln]][level[[coln]] %in% unique(dat[[coln]])])
}
dat <- dat[which(!is.na(dat[[dv.pre]]) & !is.na(dat[[dv.pos]])),]
dat <- dat[,c("id",names(lfatores),dv.pre,dv.pos)]
dat.long <- rbind(dat, dat)
dat.long$time <- c(rep("pre", nrow(dat)), rep("pos", nrow(dat)))
dat.long$time <- factor(dat.long$time, c("pre","pos"))
dat.long[[dv]] <- c(dat[[dv.pre]], dat[[dv.pos]])
for (f in c("grupo", names(lfatores))) {
if (is.null(color[[f]]) && length(unique(dat[[f]])) > 0)
color[[f]] <- distinctColorPalette(length(unique(dat[[f]])))
}
for (f in c(fatores2)) {
if (is.null(color[[paste0("grupo:",f)]]) && length(unique(dat[[f]])) > 0)
color[[paste0("grupo:",f)]] <- distinctColorPalette(length(unique(dat[["grupo"]]))*length(unique(dat[[f]])))
}
ldat <- list()
laov <- list()
lpwc <- list()
lemms <- list()
Descriptive Statistics
of Initial Data
df <- get.descriptives(dat, c(dv.pre, dv.pos), c("grupo"),
include.global = T, symmetry.test = T, normality.test = F)
df <- plyr::rbind.fill(
df, do.call(plyr::rbind.fill, lapply(lfatores2, FUN = function(f) {
if (nrow(dat) > 0 && sum(!is.na(unique(dat[[f]]))) > 1)
get.descriptives(dat, c(dv.pre,dv.pos), c("grupo", f),
symmetry.test = T, normality.test = F)
}))
)
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `ci = abs(stats::qt(alpha/2, .data$n - 1) * .data$se)`.
## Caused by warning:
## ! There was 1 warning in `mutate()`.
## ℹ In argument: `ci = abs(stats::qt(alpha/2, .data$n - 1) * .data$se)`.
## Caused by warning in `stats::qt()`:
## ! NaNs produced
## There was 1 warning in `mutate()`.
## ℹ In argument: `ci = abs(stats::qt(alpha/2, .data$n - 1) * .data$se)`.
## Caused by warning:
## ! There was 1 warning in `mutate()`.
## ℹ In argument: `ci = abs(stats::qt(alpha/2, .data$n - 1) * .data$se)`.
## Caused by warning in `stats::qt()`:
## ! NaNs produced
df <- df[,c(fatores1[fatores1 %in% colnames(df)],"variable",
colnames(df)[!colnames(df) %in% c(fatores1,"variable")])]
| Controle |
|
|
|
|
|
score.tde.pre |
485 |
37.631 |
44.0 |
0 |
75 |
19.176 |
0.871 |
1.711 |
33.00 |
YES |
-0.443 |
-1.017 |
| Experimental |
|
|
|
|
|
score.tde.pre |
636 |
36.748 |
39.0 |
0 |
73 |
16.891 |
0.670 |
1.315 |
24.00 |
YES |
-0.303 |
-0.711 |
|
|
|
|
|
|
score.tde.pre |
1121 |
37.130 |
41.0 |
0 |
75 |
17.912 |
0.535 |
1.050 |
28.00 |
YES |
-0.370 |
-0.857 |
| Controle |
|
|
|
|
|
score.tde.pos |
485 |
33.816 |
36.0 |
0 |
73 |
20.988 |
0.953 |
1.873 |
37.00 |
YES |
-0.108 |
-1.287 |
| Experimental |
|
|
|
|
|
score.tde.pos |
636 |
35.376 |
38.0 |
0 |
74 |
18.900 |
0.749 |
1.472 |
30.00 |
YES |
-0.158 |
-1.024 |
|
|
|
|
|
|
score.tde.pos |
1121 |
34.701 |
37.0 |
0 |
74 |
19.836 |
0.592 |
1.162 |
33.00 |
YES |
-0.145 |
-1.138 |
| Controle |
F |
|
|
|
|
score.tde.pre |
247 |
40.652 |
46.0 |
0 |
72 |
17.259 |
1.098 |
2.163 |
24.50 |
NO |
-0.692 |
-0.519 |
| Controle |
M |
|
|
|
|
score.tde.pre |
238 |
34.496 |
42.0 |
0 |
75 |
20.552 |
1.332 |
2.624 |
37.00 |
YES |
-0.173 |
-1.308 |
| Experimental |
F |
|
|
|
|
score.tde.pre |
319 |
39.408 |
43.0 |
0 |
73 |
16.802 |
0.941 |
1.851 |
25.00 |
YES |
-0.460 |
-0.599 |
| Experimental |
M |
|
|
|
|
score.tde.pre |
317 |
34.073 |
36.0 |
0 |
71 |
16.580 |
0.931 |
1.832 |
23.00 |
YES |
-0.175 |
-0.723 |
| Controle |
F |
|
|
|
|
score.tde.pos |
247 |
36.567 |
42.0 |
0 |
72 |
19.883 |
1.265 |
2.492 |
35.00 |
YES |
-0.290 |
-1.208 |
| Controle |
M |
|
|
|
|
score.tde.pos |
238 |
30.962 |
28.5 |
0 |
73 |
21.752 |
1.410 |
2.778 |
37.00 |
YES |
0.098 |
-1.291 |
| Experimental |
F |
|
|
|
|
score.tde.pos |
319 |
38.138 |
42.0 |
0 |
73 |
19.397 |
1.086 |
2.137 |
32.00 |
YES |
-0.311 |
-1.059 |
| Experimental |
M |
|
|
|
|
score.tde.pos |
317 |
32.596 |
34.0 |
0 |
74 |
17.992 |
1.011 |
1.988 |
29.00 |
YES |
-0.050 |
-0.909 |
| Controle |
|
Rural |
|
|
|
score.tde.pre |
243 |
36.181 |
43.0 |
0 |
69 |
19.626 |
1.259 |
2.480 |
34.50 |
YES |
-0.429 |
-1.220 |
| Controle |
|
Urbana |
|
|
|
score.tde.pre |
109 |
39.468 |
43.0 |
1 |
75 |
18.034 |
1.727 |
3.424 |
26.00 |
YES |
-0.361 |
-0.676 |
| Controle |
|
|
|
|
|
score.tde.pre |
133 |
38.774 |
45.0 |
0 |
73 |
19.183 |
1.663 |
3.290 |
32.00 |
YES |
-0.480 |
-1.003 |
| Experimental |
|
Rural |
|
|
|
score.tde.pre |
284 |
34.592 |
35.5 |
0 |
73 |
17.467 |
1.036 |
2.040 |
25.25 |
YES |
-0.140 |
-0.823 |
| Experimental |
|
Urbana |
|
|
|
score.tde.pre |
167 |
37.850 |
42.0 |
0 |
71 |
16.633 |
1.287 |
2.541 |
22.00 |
YES |
-0.491 |
-0.519 |
| Experimental |
|
|
|
|
|
score.tde.pre |
185 |
39.065 |
42.0 |
0 |
69 |
15.877 |
1.167 |
2.303 |
23.00 |
YES |
-0.345 |
-0.691 |
| Controle |
|
Rural |
|
|
|
score.tde.pos |
243 |
34.243 |
39.0 |
0 |
72 |
21.515 |
1.380 |
2.719 |
38.00 |
YES |
-0.201 |
-1.321 |
| Controle |
|
Urbana |
|
|
|
score.tde.pos |
109 |
29.835 |
26.0 |
0 |
73 |
20.374 |
1.951 |
3.868 |
37.00 |
YES |
0.237 |
-1.198 |
| Controle |
|
|
|
|
|
score.tde.pos |
133 |
36.301 |
39.0 |
0 |
73 |
20.179 |
1.750 |
3.461 |
34.00 |
YES |
-0.200 |
-1.185 |
| Experimental |
|
Rural |
|
|
|
score.tde.pos |
284 |
33.627 |
33.0 |
0 |
72 |
19.232 |
1.141 |
2.246 |
33.00 |
YES |
0.039 |
-1.088 |
| Experimental |
|
Urbana |
|
|
|
score.tde.pos |
167 |
34.108 |
38.0 |
0 |
74 |
18.899 |
1.462 |
2.887 |
30.50 |
YES |
-0.228 |
-1.049 |
| Experimental |
|
|
|
|
|
score.tde.pos |
185 |
39.205 |
42.0 |
0 |
73 |
17.909 |
1.317 |
2.598 |
26.00 |
YES |
-0.387 |
-0.775 |
| Controle |
|
|
Parda |
|
|
score.tde.pre |
162 |
36.741 |
43.0 |
0 |
66 |
18.900 |
1.485 |
2.932 |
31.25 |
NO |
-0.595 |
-0.975 |
| Controle |
|
|
Indígena |
|
|
score.tde.pre |
11 |
42.000 |
46.0 |
4 |
65 |
17.297 |
5.215 |
11.621 |
9.50 |
NO |
-1.005 |
-0.104 |
| Controle |
|
|
Branca |
|
|
score.tde.pre |
50 |
41.460 |
46.0 |
2 |
67 |
16.942 |
2.396 |
4.815 |
14.50 |
NO |
-0.821 |
-0.311 |
| Controle |
|
|
|
|
|
score.tde.pre |
262 |
37.267 |
43.0 |
0 |
75 |
19.798 |
1.223 |
2.408 |
34.00 |
YES |
-0.268 |
-1.181 |
| Experimental |
|
|
Parda |
|
|
score.tde.pre |
190 |
34.253 |
35.0 |
0 |
68 |
17.537 |
1.272 |
2.510 |
27.00 |
YES |
-0.133 |
-0.931 |
| Experimental |
|
|
Indígena |
|
|
score.tde.pre |
15 |
27.067 |
26.0 |
6 |
54 |
17.065 |
4.406 |
9.450 |
27.00 |
YES |
0.126 |
-1.422 |
| Experimental |
|
|
Branca |
|
|
score.tde.pre |
61 |
34.623 |
36.0 |
0 |
73 |
19.728 |
2.526 |
5.053 |
33.00 |
YES |
-0.045 |
-1.037 |
| Experimental |
|
|
Amarela |
|
|
score.tde.pre |
1 |
23.000 |
23.0 |
23 |
23 |
|
|
|
0.00 |
few data |
0.000 |
0.000 |
| Experimental |
|
|
|
|
|
score.tde.pre |
369 |
38.816 |
42.0 |
0 |
71 |
15.723 |
0.819 |
1.610 |
21.00 |
YES |
-0.438 |
-0.449 |
| Controle |
|
|
Parda |
|
|
score.tde.pos |
162 |
32.463 |
35.0 |
0 |
68 |
20.798 |
1.634 |
3.227 |
39.75 |
YES |
-0.166 |
-1.437 |
| Controle |
|
|
Indígena |
|
|
score.tde.pos |
11 |
45.636 |
52.0 |
4 |
63 |
19.931 |
6.009 |
13.390 |
19.50 |
NO |
-0.968 |
-0.645 |
| Controle |
|
|
Branca |
|
|
score.tde.pos |
50 |
34.300 |
38.0 |
0 |
72 |
20.518 |
2.902 |
5.831 |
34.75 |
YES |
-0.208 |
-1.184 |
| Controle |
|
|
|
|
|
score.tde.pos |
262 |
34.065 |
34.0 |
0 |
73 |
21.180 |
1.309 |
2.577 |
36.00 |
YES |
-0.024 |
-1.252 |
| Experimental |
|
|
Parda |
|
|
score.tde.pos |
190 |
32.447 |
30.0 |
0 |
71 |
19.467 |
1.412 |
2.786 |
32.75 |
YES |
0.082 |
-1.112 |
| Experimental |
|
|
Indígena |
|
|
score.tde.pos |
15 |
30.333 |
26.0 |
1 |
57 |
17.715 |
4.574 |
9.810 |
30.50 |
YES |
0.117 |
-1.542 |
| Experimental |
|
|
Branca |
|
|
score.tde.pos |
61 |
33.311 |
34.0 |
0 |
72 |
21.189 |
2.713 |
5.427 |
34.00 |
YES |
0.076 |
-1.201 |
| Experimental |
|
|
Amarela |
|
|
score.tde.pos |
1 |
23.000 |
23.0 |
23 |
23 |
|
|
|
0.00 |
few data |
0.000 |
0.000 |
| Experimental |
|
|
|
|
|
score.tde.pos |
369 |
37.463 |
40.0 |
0 |
74 |
18.045 |
0.939 |
1.847 |
27.00 |
YES |
-0.336 |
-0.844 |
| Controle |
|
|
|
6 ano |
|
score.tde.pre |
134 |
28.993 |
26.5 |
0 |
63 |
19.526 |
1.687 |
3.336 |
36.00 |
YES |
0.057 |
-1.526 |
| Controle |
|
|
|
7 ano |
|
score.tde.pre |
141 |
34.716 |
41.0 |
0 |
69 |
17.842 |
1.503 |
2.971 |
29.00 |
YES |
-0.265 |
-1.162 |
| Controle |
|
|
|
8 ano |
|
score.tde.pre |
89 |
42.584 |
46.0 |
0 |
72 |
16.382 |
1.737 |
3.451 |
17.00 |
NO |
-0.833 |
0.214 |
| Controle |
|
|
|
9 ano |
|
score.tde.pre |
121 |
46.950 |
51.0 |
0 |
75 |
17.124 |
1.557 |
3.082 |
15.00 |
NO |
-1.124 |
0.589 |
| Experimental |
|
|
|
6 ano |
|
score.tde.pre |
159 |
29.000 |
29.0 |
0 |
65 |
15.950 |
1.265 |
2.498 |
24.50 |
YES |
-0.043 |
-0.909 |
| Experimental |
|
|
|
7 ano |
|
score.tde.pre |
187 |
36.540 |
38.0 |
0 |
68 |
14.891 |
1.089 |
2.148 |
21.50 |
YES |
-0.195 |
-0.682 |
| Experimental |
|
|
|
8 ano |
|
score.tde.pre |
143 |
39.000 |
44.0 |
0 |
73 |
18.129 |
1.516 |
2.997 |
25.50 |
NO |
-0.515 |
-0.734 |
| Experimental |
|
|
|
9 ano |
|
score.tde.pre |
147 |
43.204 |
45.0 |
0 |
71 |
15.845 |
1.307 |
2.583 |
22.00 |
NO |
-0.641 |
-0.044 |
| Controle |
|
|
|
6 ano |
|
score.tde.pos |
134 |
24.231 |
19.5 |
0 |
66 |
20.155 |
1.741 |
3.444 |
40.00 |
YES |
0.381 |
-1.295 |
| Controle |
|
|
|
7 ano |
|
score.tde.pos |
141 |
28.362 |
22.0 |
0 |
72 |
20.646 |
1.739 |
3.437 |
37.00 |
YES |
0.379 |
-1.190 |
| Controle |
|
|
|
8 ano |
|
score.tde.pos |
89 |
39.787 |
43.0 |
0 |
71 |
17.900 |
1.897 |
3.771 |
28.00 |
NO |
-0.521 |
-0.552 |
| Controle |
|
|
|
9 ano |
|
score.tde.pos |
121 |
46.397 |
50.0 |
0 |
73 |
16.448 |
1.495 |
2.960 |
20.00 |
NO |
-0.786 |
0.049 |
| Experimental |
|
|
|
6 ano |
|
score.tde.pos |
159 |
24.094 |
22.0 |
0 |
65 |
16.759 |
1.329 |
2.625 |
26.00 |
NO |
0.518 |
-0.626 |
| Experimental |
|
|
|
7 ano |
|
score.tde.pos |
187 |
33.524 |
36.0 |
0 |
69 |
17.147 |
1.254 |
2.474 |
27.50 |
YES |
-0.063 |
-0.934 |
| Experimental |
|
|
|
8 ano |
|
score.tde.pos |
143 |
41.042 |
45.0 |
0 |
73 |
19.177 |
1.604 |
3.170 |
26.50 |
NO |
-0.568 |
-0.652 |
| Experimental |
|
|
|
9 ano |
|
score.tde.pos |
147 |
44.422 |
48.0 |
0 |
74 |
16.143 |
1.331 |
2.631 |
22.50 |
NO |
-0.733 |
0.081 |
| Controle |
|
|
|
|
1st quintile |
score.tde.pre |
113 |
9.230 |
10.0 |
0 |
18 |
5.560 |
0.523 |
1.036 |
9.00 |
YES |
-0.093 |
-1.227 |
| Controle |
|
|
|
|
2nd quintile |
score.tde.pre |
59 |
24.542 |
25.0 |
19 |
31 |
3.780 |
0.492 |
0.985 |
6.00 |
YES |
-0.056 |
-1.175 |
| Controle |
|
|
|
|
3rd quintile |
score.tde.pre |
54 |
38.815 |
39.5 |
32 |
42 |
3.004 |
0.409 |
0.820 |
5.00 |
NO |
-0.510 |
-1.049 |
| Controle |
|
|
|
|
4th quintile |
score.tde.pre |
135 |
47.370 |
47.0 |
43 |
51 |
2.579 |
0.222 |
0.439 |
4.50 |
YES |
-0.238 |
-1.107 |
| Controle |
|
|
|
|
5th quintile |
score.tde.pre |
124 |
58.621 |
58.0 |
52 |
75 |
5.367 |
0.482 |
0.954 |
8.00 |
NO |
0.794 |
0.036 |
| Experimental |
|
|
|
|
1st quintile |
score.tde.pre |
112 |
9.777 |
10.0 |
0 |
18 |
5.445 |
0.515 |
1.020 |
9.25 |
YES |
-0.202 |
-1.150 |
| Experimental |
|
|
|
|
2nd quintile |
score.tde.pre |
117 |
25.855 |
26.0 |
19 |
31 |
3.422 |
0.316 |
0.627 |
6.00 |
YES |
-0.218 |
-1.044 |
| Experimental |
|
|
|
|
3rd quintile |
score.tde.pre |
141 |
37.383 |
38.0 |
32 |
42 |
3.177 |
0.268 |
0.529 |
6.00 |
YES |
-0.147 |
-1.221 |
| Experimental |
|
|
|
|
4th quintile |
score.tde.pre |
132 |
46.697 |
47.0 |
43 |
51 |
2.489 |
0.217 |
0.429 |
4.25 |
YES |
0.144 |
-1.180 |
| Experimental |
|
|
|
|
5th quintile |
score.tde.pre |
134 |
58.336 |
57.5 |
52 |
73 |
5.029 |
0.434 |
0.859 |
8.00 |
NO |
0.688 |
-0.352 |
| Controle |
|
|
|
|
1st quintile |
score.tde.pos |
113 |
8.522 |
5.0 |
0 |
44 |
8.588 |
0.808 |
1.601 |
12.00 |
NO |
1.083 |
1.171 |
| Controle |
|
|
|
|
2nd quintile |
score.tde.pos |
59 |
19.966 |
20.0 |
0 |
66 |
12.947 |
1.686 |
3.374 |
13.50 |
NO |
1.282 |
2.560 |
| Controle |
|
|
|
|
3rd quintile |
score.tde.pos |
54 |
30.185 |
28.5 |
2 |
62 |
15.298 |
2.082 |
4.176 |
22.25 |
YES |
0.232 |
-0.869 |
| Controle |
|
|
|
|
4th quintile |
score.tde.pos |
135 |
43.215 |
46.0 |
14 |
63 |
11.360 |
0.978 |
1.934 |
16.00 |
NO |
-0.680 |
-0.300 |
| Controle |
|
|
|
|
5th quintile |
score.tde.pos |
124 |
54.806 |
56.0 |
22 |
73 |
10.905 |
0.979 |
1.938 |
11.25 |
NO |
-0.916 |
0.870 |
| Experimental |
|
|
|
|
1st quintile |
score.tde.pos |
112 |
11.384 |
10.0 |
0 |
51 |
9.500 |
0.898 |
1.779 |
12.00 |
NO |
1.241 |
2.205 |
| Experimental |
|
|
|
|
2nd quintile |
score.tde.pos |
117 |
24.675 |
25.0 |
0 |
60 |
12.203 |
1.128 |
2.234 |
16.00 |
YES |
0.028 |
-0.429 |
| Experimental |
|
|
|
|
3rd quintile |
score.tde.pos |
141 |
34.872 |
37.0 |
0 |
64 |
13.013 |
1.096 |
2.167 |
18.00 |
YES |
-0.298 |
-0.483 |
| Experimental |
|
|
|
|
4th quintile |
score.tde.pos |
132 |
45.030 |
47.0 |
10 |
69 |
10.621 |
0.924 |
1.829 |
11.00 |
NO |
-0.801 |
0.896 |
| Experimental |
|
|
|
|
5th quintile |
score.tde.pos |
134 |
55.791 |
57.0 |
14 |
74 |
10.619 |
0.917 |
1.814 |
12.00 |
NO |
-1.174 |
2.100 |
ANCOVA and Pairwise
for one factor: grupo
Without remove non-normal
data
pdat = remove_group_data(dat[!is.na(dat[["grupo"]]),], "score.tde.pos", "grupo")
pdat.long <- rbind(pdat[,c("id","grupo")], pdat[,c("id","grupo")])
pdat.long[["time"]] <- c(rep("pre", nrow(pdat)), rep("pos", nrow(pdat)))
pdat.long[["time"]] <- factor(pdat.long[["time"]], c("pre","pos"))
pdat.long[["score.tde"]] <- c(pdat[["score.tde.pre"]], pdat[["score.tde.pos"]])
aov = anova_test(pdat, score.tde.pos ~ score.tde.pre + grupo)
laov[["grupo"]] <- get_anova_table(aov)
pwc <- emmeans_test(pdat, score.tde.pos ~ grupo, covariate = score.tde.pre,
p.adjust.method = "bonferroni")
pwc.long <- emmeans_test(dplyr::group_by_at(pdat.long, "grupo"),
score.tde ~ time,
p.adjust.method = "bonferroni")
lpwc[["grupo"]] <- plyr::rbind.fill(pwc, pwc.long)
ds <- get.descriptives(pdat, "score.tde.pos", "grupo", covar = "score.tde.pre")
ds <- merge(ds[ds$variable != "score.tde.pre",],
ds[ds$variable == "score.tde.pre", !colnames(ds) %in% c("variable")],
by = "grupo", all.x = T, suffixes = c("", ".score.tde.pre"))
ds <- merge(get_emmeans(pwc), ds, by = "grupo", suffixes = c(".emms", ""))
ds <- ds[,c("grupo","n","mean.score.tde.pre","se.score.tde.pre","mean","se",
"emmean","se.emms","conf.low","conf.high")]
colnames(ds) <- c("grupo", "N", paste0(c("M","SE")," (pre)"),
paste0(c("M","SE"), " (unadj)"),
paste0(c("M", "SE"), " (adj)"), "conf.low", "conf.high")
lemms[["grupo"]] <- ds
Computing
ANCOVA and PairWise After removing non-normal data (OK)
wdat = pdat
res = residuals(lm(score.tde.pos ~ score.tde.pre + grupo, data = wdat))
non.normal = getNonNormal(res, wdat$id, plimit = 0.05)
wdat = wdat[!wdat$id %in% non.normal,]
wdat.long <- rbind(wdat[,c("id","grupo")], wdat[,c("id","grupo")])
wdat.long[["time"]] <- c(rep("pre", nrow(wdat)), rep("pos", nrow(wdat)))
wdat.long[["time"]] <- factor(wdat.long[["time"]], c("pre","pos"))
wdat.long[["score.tde"]] <- c(wdat[["score.tde.pre"]], wdat[["score.tde.pos"]])
ldat[["grupo"]] = wdat
(non.normal)
## [1] "P962" "P1128" "P984" "P1129" "P3637" "P1126" "P1971" "P572" "P3021" "P2871" "P1139" "P921" "P2858" "P3054" "P3019"
## [16] "P2995" "P2848" "P2870" "P1117" "P2929" "P929" "P2835" "P2983" "P2946" "P2865" "P2910" "P3007" "P3015" "P2964" "P2975"
## [31] "P2876" "P2937" "P2831" "P2953" "P2986" "P1018" "P2950" "P2883" "P1878" "P2917" "P2866" "P2997" "P2880" "P908" "P2978"
## [46] "P2864" "P3005" "P2974" "P3026" "P2904" "P2994" "P1111" "P2846" "P2913" "P2886" "P2905" "P3533" "P914" "P2888" "P2867"
## [61] "P1983" "P3574" "P1840" "P3545" "P2993" "P976" "P2973" "P2967" "P3029" "P3548" "P3000" "P2959" "P2956" "P2982" "P3475"
## [76] "P2854" "P1068" "P3476" "P3674" "P3660" "P2004" "P3666" "P2190" "P2839" "P2861" "P1885" "P2947" "P606" "P1149" "P609"
## [91] "P2843" "P3228" "P2845" "P2868" "P2860" "P3024" "P2852" "P2990" "P2969" "P809" "P2909" "P924" "P1914" "P1056" "P2847"
## [106] "P1046" "P1118" "P541" "P3651" "P3221" "P2903" "P2979" "P3537" "P2981" "P3237" "P1127" "P1916" "P2832" "P1828" "P3571"
## [121] "P996" "P2869" "P2836" "P2879" "P1900" "P2891" "P3608" "P2882" "P2951" "P1673" "P993" "P1910" "P548" "P492" "P1887"
## [136] "P848" "P1964" "P859" "P2971" "P2922"
aov = anova_test(wdat, score.tde.pos ~ score.tde.pre + grupo)
laov[["grupo"]] <- merge(get_anova_table(aov), laov[["grupo"]],
by="Effect", suffixes = c("","'"))
(df = get_anova_table(aov))
## ANOVA Table (type II tests)
##
## Effect DFn DFd F p p<.05 ges
## 1 score.tde.pre 1 978 5874.442 0.00e+00 * 0.857
## 2 grupo 1 978 24.670 8.03e-07 * 0.025
| score.tde.pre |
1 |
978 |
5874.442 |
0 |
* |
0.857 |
| grupo |
1 |
978 |
24.670 |
0 |
* |
0.025 |
pwc <- emmeans_test(wdat, score.tde.pos ~ grupo, covariate = score.tde.pre,
p.adjust.method = "bonferroni")
| score.tde.pre*grupo |
score.tde.pos |
Controle |
Experimental |
978 |
-4.967 |
0 |
0 |
**** |
pwc.long <- emmeans_test(dplyr::group_by_at(wdat.long, "grupo"),
score.tde ~ time,
p.adjust.method = "bonferroni")
lpwc[["grupo"]] <- merge(plyr::rbind.fill(pwc, pwc.long), lpwc[["grupo"]],
by=c("grupo","term",".y.","group1","group2"),
suffixes = c("","'"))
| Controle |
time |
score.tde |
pre |
pos |
1958 |
1.465 |
0.143 |
0.143 |
ns |
| Experimental |
time |
score.tde |
pre |
pos |
1958 |
-0.402 |
0.688 |
0.688 |
ns |
ds <- get.descriptives(wdat, "score.tde.pos", "grupo", covar = "score.tde.pre")
ds <- merge(ds[ds$variable != "score.tde.pre",],
ds[ds$variable == "score.tde.pre", !colnames(ds) %in% c("variable")],
by = "grupo", all.x = T, suffixes = c("", ".score.tde.pre"))
ds <- merge(get_emmeans(pwc), ds, by = "grupo", suffixes = c(".emms", ""))
ds <- ds[,c("grupo","n","mean.score.tde.pre","se.score.tde.pre","mean","se",
"emmean","se.emms","conf.low","conf.high")]
colnames(ds) <- c("grupo", "N", paste0(c("M","SE")," (pre)"),
paste0(c("M","SE"), " (unadj)"),
paste0(c("M", "SE"), " (adj)"), "conf.low", "conf.high")
lemms[["grupo"]] <- merge(ds, lemms[["grupo"]], by=c("grupo"), suffixes = c("","'"))
| Controle |
424 |
37.351 |
0.975 |
35.432 |
1.018 |
35.112 |
0.358 |
34.409 |
35.815 |
| Experimental |
557 |
36.770 |
0.741 |
37.230 |
0.777 |
37.473 |
0.313 |
36.860 |
38.087 |
Plots for ancova
plots <- oneWayAncovaPlots(
wdat, "score.tde.pos", "grupo", aov, list("grupo"=pwc), addParam = c("mean_ci"),
font.label.size=10, step.increase=0.05, p.label="p.adj",
subtitle = which(aov$Effect == "grupo"))
if (!is.null(nrow(plots[["grupo"]]$data)))
plots[["grupo"]] +
if (ymin.ci < ymax.ci) ggplot2::ylim(ymin.ci, ymax.ci)

plots <- oneWayAncovaBoxPlots(
wdat, "score.tde.pos", "grupo", aov, pwc, covar = "score.tde.pre",
theme = "classic", color = color[["grupo"]],
subtitle = which(aov$Effect == "grupo"))
if (length(unique(wdat[["grupo"]])) > 1)
plots[["grupo"]] + ggplot2::ylab("Writing (TDE)") +
ggplot2::scale_x_discrete(labels=c('pre', 'pos')) +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)

if (length(unique(wdat.long[["grupo"]])) > 1)
plots <- oneWayAncovaBoxPlots(
wdat.long, "score.tde", "grupo", aov, pwc.long,
pre.post = "time", theme = "classic", color = color$prepost)
if (length(unique(wdat.long[["grupo"]])) > 1)
plots[["grupo"]] + ggplot2::ylab("Writing (TDE)") +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)

Checking linearity
assumption
ggscatter(wdat, x = "score.tde.pre", y = "score.tde.pos", size = 0.5,
color = "grupo", add = "reg.line")+
stat_regline_equation(
aes(label = paste(..eq.label.., ..rr.label.., sep = "~~~~"), color = grupo)
) +
ggplot2::labs(subtitle = rstatix::get_test_label(aov, detailed = T, row = which(aov$Effect == "grupo"))) +
ggplot2::scale_color_manual(values = color[["grupo"]]) +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)

Checking normality and
homogeneity
res <- augment(lm(score.tde.pos ~ score.tde.pre + grupo, data = wdat))
## # A tibble: 1 × 3
## variable statistic p.value
## <chr> <dbl> <dbl>
## 1 res$.resid 0.996 0.0185
levene_test(res, .resid ~ grupo)
## # A tibble: 1 × 4
## df1 df2 statistic p
## <int> <int> <dbl> <dbl>
## 1 1 979 0.00118 0.973
ANCOVA and
Pairwise for two factors grupo:Sexo
Without remove non-normal
data
pdat = remove_group_data(dat[!is.na(dat[["grupo"]]) & !is.na(dat[["Sexo"]]),],
"score.tde.pos", c("grupo","Sexo"))
pdat = pdat[pdat[["Sexo"]] %in% do.call(
intersect, lapply(unique(pdat[["grupo"]]), FUN = function(x) {
unique(pdat[["Sexo"]][which(pdat[["grupo"]] == x)])
})),]
pdat[["grupo"]] = factor(pdat[["grupo"]], level[["grupo"]])
pdat[["Sexo"]] = factor(
pdat[["Sexo"]],
level[["Sexo"]][level[["Sexo"]] %in% unique(pdat[["Sexo"]])])
pdat.long <- rbind(pdat[,c("id","grupo","Sexo")], pdat[,c("id","grupo","Sexo")])
pdat.long[["time"]] <- c(rep("pre", nrow(pdat)), rep("pos", nrow(pdat)))
pdat.long[["time"]] <- factor(pdat.long[["time"]], c("pre","pos"))
pdat.long[["score.tde"]] <- c(pdat[["score.tde.pre"]], pdat[["score.tde.pos"]])
if (length(unique(pdat[["Sexo"]])) >= 2) {
aov = anova_test(pdat, score.tde.pos ~ score.tde.pre + grupo*Sexo)
laov[["grupo:Sexo"]] <- get_anova_table(aov)
}
if (length(unique(pdat[["Sexo"]])) >= 2) {
pwcs <- list()
pwcs[["Sexo"]] <- emmeans_test(
group_by(pdat, grupo), score.tde.pos ~ Sexo,
covariate = score.tde.pre, p.adjust.method = "bonferroni")
pwcs[["grupo"]] <- emmeans_test(
group_by(pdat, Sexo), score.tde.pos ~ grupo,
covariate = score.tde.pre, p.adjust.method = "bonferroni")
pwc <- plyr::rbind.fill(pwcs[["grupo"]], pwcs[["Sexo"]])
pwc <- pwc[,c("grupo","Sexo", colnames(pwc)[!colnames(pwc) %in% c("grupo","Sexo")])]
}
if (length(unique(pdat[["Sexo"]])) >= 2) {
pwc.long <- emmeans_test(dplyr::group_by_at(pdat.long, c("grupo","Sexo")),
score.tde ~ time,
p.adjust.method = "bonferroni")
lpwc[["grupo:Sexo"]] <- plyr::rbind.fill(pwc, pwc.long)
}
if (length(unique(pdat[["Sexo"]])) >= 2) {
ds <- get.descriptives(pdat, "score.tde.pos", c("grupo","Sexo"), covar = "score.tde.pre")
ds <- merge(ds[ds$variable != "score.tde.pre",],
ds[ds$variable == "score.tde.pre", !colnames(ds) %in% c("variable")],
by = c("grupo","Sexo"), all.x = T, suffixes = c("", ".score.tde.pre"))
ds <- merge(get_emmeans(pwcs[["grupo"]]), ds,
by = c("grupo","Sexo"), suffixes = c(".emms", ""))
ds <- ds[,c("grupo","Sexo","n","mean.score.tde.pre","se.score.tde.pre","mean","se",
"emmean","se.emms","conf.low","conf.high")]
colnames(ds) <- c("grupo","Sexo", "N", paste0(c("M","SE")," (pre)"),
paste0(c("M","SE"), " (unadj)"),
paste0(c("M", "SE"), " (adj)"), "conf.low", "conf.high")
lemms[["grupo:Sexo"]] <- ds
}
Computing
ANCOVA and PairWise After removing non-normal data (OK)
if (length(unique(pdat[["Sexo"]])) >= 2) {
wdat = pdat
res = residuals(lm(score.tde.pos ~ score.tde.pre + grupo*Sexo, data = wdat))
non.normal = getNonNormal(res, wdat$id, plimit = 0.05)
wdat = wdat[!wdat$id %in% non.normal,]
wdat.long <- rbind(wdat[,c("id","grupo","Sexo")], wdat[,c("id","grupo","Sexo")])
wdat.long[["time"]] <- c(rep("pre", nrow(wdat)), rep("pos", nrow(wdat)))
wdat.long[["time"]] <- factor(wdat.long[["time"]], c("pre","pos"))
wdat.long[["score.tde"]] <- c(wdat[["score.tde.pre"]], wdat[["score.tde.pos"]])
ldat[["grupo:Sexo"]] = wdat
(non.normal)
}
## [1] "P962" "P1128" "P984" "P1129" "P3637" "P1126" "P1971" "P2995" "P2871" "P572" "P921" "P3019" "P2994" "P2880" "P2848"
## [16] "P2983" "P908" "P3021" "P3054" "P1139" "P2858" "P2835" "P2904" "P1117" "P3015" "P2870" "P2929" "P2910" "P2886" "P914"
## [31] "P2913" "P1111" "P2974" "P2964" "P2867" "P2876" "P2937" "P1840" "P2973" "P3007" "P2861" "P2969" "P2953" "P2986" "P2883"
## [46] "P2831" "P2975" "P1018" "P3476" "P2997" "P3005" "P1878" "P2866" "P2950" "P2993" "P3545" "P2917" "P2978" "P3029" "P2864"
## [61] "P2888" "P976" "P2854" "P2959" "P3548" "P2190" "P929" "P3574" "P2947" "P2845" "P1983" "P3674" "P1149" "P1068" "P3475"
## [76] "P2004" "P2860" "P2982" "P2839" "P3024" "P1885" "P2868" "P609" "P2990" "P2946" "P1056" "P2933" "P3020" "P2879" "P873"
## [91] "P1887" "P2865" "P3026" "P3660" "P2956" "P3080" "P3666" "P2846" "P3533" "P3228" "P2948" "P2850" "P3000" "P809" "P2905"
## [106] "P1046" "P1118" "P3221" "P1665" "P2903" "P1597" "P2836" "P3537" "P584" "P854" "P1127" "P1804" "P2869" "P2979" "P3571"
## [121] "P1652" "P924" "P1803" "P3088" "P1592" "P2901" "P3608" "P848" "P1964" "P2971" "P1900" "P996" "P3732" "P492" "P2922"
## [136] "P859" "P2980" "P1916" "P2832" "P1858" "P1151" "P2375" "P3156" "P3030" "P3061" "P2327" "P2894"
if (length(unique(pdat[["Sexo"]])) >= 2) {
aov = anova_test(wdat, score.tde.pos ~ score.tde.pre + grupo*Sexo)
laov[["grupo:Sexo"]] <- merge(get_anova_table(aov), laov[["grupo:Sexo"]],
by="Effect", suffixes = c("","'"))
df = get_anova_table(aov)
}
| score.tde.pre |
1 |
969 |
5974.401 |
0.000 |
* |
0.860 |
| grupo |
1 |
969 |
23.992 |
0.000 |
* |
0.024 |
| Sexo |
1 |
969 |
0.058 |
0.810 |
|
0.000 |
| grupo:Sexo |
1 |
969 |
0.548 |
0.459 |
|
0.001 |
if (length(unique(pdat[["Sexo"]])) >= 2) {
pwcs <- list()
pwcs[["Sexo"]] <- emmeans_test(
group_by(wdat, grupo), score.tde.pos ~ Sexo,
covariate = score.tde.pre, p.adjust.method = "bonferroni")
pwcs[["grupo"]] <- emmeans_test(
group_by(wdat, Sexo), score.tde.pos ~ grupo,
covariate = score.tde.pre, p.adjust.method = "bonferroni")
pwc <- plyr::rbind.fill(pwcs[["grupo"]], pwcs[["Sexo"]])
pwc <- pwc[,c("grupo","Sexo", colnames(pwc)[!colnames(pwc) %in% c("grupo","Sexo")])]
}
|
F |
score.tde.pre*grupo |
score.tde.pos |
Controle |
Experimental |
969 |
-3.977 |
0.000 |
0.000 |
**** |
|
M |
score.tde.pre*grupo |
score.tde.pos |
Controle |
Experimental |
969 |
-2.953 |
0.003 |
0.003 |
** |
| Controle |
|
score.tde.pre*Sexo |
score.tde.pos |
F |
M |
969 |
-0.398 |
0.691 |
0.691 |
ns |
| Experimental |
|
score.tde.pre*Sexo |
score.tde.pos |
F |
M |
969 |
0.663 |
0.507 |
0.507 |
ns |
if (length(unique(pdat[["Sexo"]])) >= 2) {
pwc.long <- emmeans_test(dplyr::group_by_at(wdat.long, c("grupo","Sexo")),
score.tde ~ time,
p.adjust.method = "bonferroni")
lpwc[["grupo:Sexo"]] <- merge(plyr::rbind.fill(pwc, pwc.long),
lpwc[["grupo:Sexo"]],
by=c("grupo","Sexo","term",".y.","group1","group2"),
suffixes = c("","'"))
}
| Controle |
F |
time |
score.tde |
pre |
pos |
1940 |
1.089 |
0.276 |
0.276 |
ns |
| Controle |
M |
time |
score.tde |
pre |
pos |
1940 |
0.837 |
0.403 |
0.403 |
ns |
| Experimental |
F |
time |
score.tde |
pre |
pos |
1940 |
-0.403 |
0.687 |
0.687 |
ns |
| Experimental |
M |
time |
score.tde |
pre |
pos |
1940 |
-0.251 |
0.802 |
0.802 |
ns |
if (length(unique(pdat[["Sexo"]])) >= 2) {
ds <- get.descriptives(wdat, "score.tde.pos", c("grupo","Sexo"), covar = "score.tde.pre")
ds <- merge(ds[ds$variable != "score.tde.pre",],
ds[ds$variable == "score.tde.pre", !colnames(ds) %in% c("variable")],
by = c("grupo","Sexo"), all.x = T, suffixes = c("", ".score.tde.pre"))
ds <- merge(get_emmeans(pwcs[["grupo"]]), ds,
by = c("grupo","Sexo"), suffixes = c(".emms", ""))
ds <- ds[,c("grupo","Sexo","n","mean.score.tde.pre","se.score.tde.pre",
"mean","se","emmean","se.emms","conf.low","conf.high")]
colnames(ds) <- c("grupo","Sexo", "N", paste0(c("M","SE")," (pre)"),
paste0(c("M","SE"), " (unadj)"),
paste0(c("M", "SE"), " (adj)"), "conf.low", "conf.high")
lemms[["grupo:Sexo"]] <- merge(ds, lemms[["grupo:Sexo"]],
by=c("grupo","Sexo"), suffixes = c("","'"))
}
| Controle |
F |
208 |
40.635 |
1.278 |
38.615 |
1.351 |
35.106 |
0.503 |
34.119 |
36.093 |
| Controle |
M |
211 |
33.934 |
1.457 |
32.393 |
1.517 |
35.389 |
0.499 |
34.410 |
36.368 |
| Experimental |
F |
276 |
39.623 |
1.053 |
40.272 |
1.123 |
37.744 |
0.436 |
36.889 |
38.600 |
| Experimental |
M |
279 |
34.082 |
1.030 |
34.484 |
1.053 |
37.335 |
0.434 |
36.483 |
38.187 |
Plots for ancova
if (length(unique(pdat[["Sexo"]])) >= 2) {
ggPlotAoC2(pwcs, "grupo", "Sexo", aov, ylab = "Writing (TDE)",
subtitle = which(aov$Effect == "grupo:Sexo"), addParam = "errorbar") +
ggplot2::scale_color_manual(values = color[["Sexo"]]) +
if (ymin.ci < ymax.ci) ggplot2::ylim(ymin.ci, ymax.ci)
}
## Scale for colour is already present.
## Adding another scale for colour, which will replace the existing scale.

if (length(unique(pdat[["Sexo"]])) >= 2) {
ggPlotAoC2(pwcs, "Sexo", "grupo", aov, ylab = "Writing (TDE)",
subtitle = which(aov$Effect == "grupo:Sexo"), addParam = "errorbar") +
ggplot2::scale_color_manual(values = color[["grupo"]]) +
if (ymin.ci < ymax.ci) ggplot2::ylim(ymin.ci, ymax.ci)
}
## Scale for colour is already present.
## Adding another scale for colour, which will replace the existing scale.

if (length(unique(pdat[["Sexo"]])) >= 2) {
plots <- twoWayAncovaBoxPlots(
wdat, "score.tde.pos", c("grupo","Sexo"), aov, pwcs, covar = "score.tde.pre",
theme = "classic", color = color[["grupo:Sexo"]],
subtitle = which(aov$Effect == "grupo:Sexo"))
}
if (length(unique(pdat[["Sexo"]])) >= 2) {
plots[["grupo:Sexo"]] + ggplot2::ylab("Writing (TDE)") +
ggplot2::scale_x_discrete(labels=c('pre', 'pos')) +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)
}
## Warning: No shared levels found between `names(values)` of the manual scale and the data's colour values.

if (length(unique(pdat[["Sexo"]])) >= 2) {
plots <- twoWayAncovaBoxPlots(
wdat.long, "score.tde", c("grupo","Sexo"), aov, pwc.long,
pre.post = "time",
theme = "classic", color = color$prepost)
}
if (length(unique(pdat[["Sexo"]])) >= 2)
plots[["grupo:Sexo"]] + ggplot2::ylab("Writing (TDE)") +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)

Checking linearity
assumption
if (length(unique(pdat[["Sexo"]])) >= 2) {
ggscatter(wdat, x = "score.tde.pre", y = "score.tde.pos", size = 0.5,
facet.by = c("grupo","Sexo"), add = "reg.line")+
stat_regline_equation(
aes(label = paste(..eq.label.., ..rr.label.., sep = "~~~~"))
) +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)
}

if (length(unique(pdat[["Sexo"]])) >= 2) {
ggscatter(wdat, x = "score.tde.pre", y = "score.tde.pos", size = 0.5,
color = "grupo", facet.by = "Sexo", add = "reg.line")+
stat_regline_equation(
aes(label = paste(..eq.label.., ..rr.label.., sep = "~~~~"), color = grupo)
) +
ggplot2::labs(subtitle = rstatix::get_test_label(aov, detailed = T, row = which(aov$Effect == "grupo:Sexo"))) +
ggplot2::scale_color_manual(values = color[["grupo"]]) +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)
}

if (length(unique(pdat[["Sexo"]])) >= 2) {
ggscatter(wdat, x = "score.tde.pre", y = "score.tde.pos", size = 0.5,
color = "Sexo", facet.by = "grupo", add = "reg.line")+
stat_regline_equation(
aes(label = paste(..eq.label.., ..rr.label.., sep = "~~~~"), color = Sexo)
) +
ggplot2::labs(subtitle = rstatix::get_test_label(aov, detailed = T, row = which(aov$Effect == "grupo:Sexo"))) +
ggplot2::scale_color_manual(values = color[["Sexo"]]) +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)
}

Checking normality and
homogeneity
if (length(unique(pdat[["Sexo"]])) >= 2)
res <- augment(lm(score.tde.pos ~ score.tde.pre + grupo*Sexo, data = wdat))
if (length(unique(pdat[["Sexo"]])) >= 2)
shapiro_test(res$.resid)
## # A tibble: 1 × 3
## variable statistic p.value
## <chr> <dbl> <dbl>
## 1 res$.resid 0.997 0.0375
if (length(unique(pdat[["Sexo"]])) >= 2)
levene_test(res, .resid ~ grupo*Sexo)
## # A tibble: 1 × 4
## df1 df2 statistic p
## <int> <int> <dbl> <dbl>
## 1 3 970 0.0813 0.970
ANCOVA and
Pairwise for two factors grupo:Zona
Without remove non-normal
data
pdat = remove_group_data(dat[!is.na(dat[["grupo"]]) & !is.na(dat[["Zona"]]),],
"score.tde.pos", c("grupo","Zona"))
pdat = pdat[pdat[["Zona"]] %in% do.call(
intersect, lapply(unique(pdat[["grupo"]]), FUN = function(x) {
unique(pdat[["Zona"]][which(pdat[["grupo"]] == x)])
})),]
pdat[["grupo"]] = factor(pdat[["grupo"]], level[["grupo"]])
pdat[["Zona"]] = factor(
pdat[["Zona"]],
level[["Zona"]][level[["Zona"]] %in% unique(pdat[["Zona"]])])
pdat.long <- rbind(pdat[,c("id","grupo","Zona")], pdat[,c("id","grupo","Zona")])
pdat.long[["time"]] <- c(rep("pre", nrow(pdat)), rep("pos", nrow(pdat)))
pdat.long[["time"]] <- factor(pdat.long[["time"]], c("pre","pos"))
pdat.long[["score.tde"]] <- c(pdat[["score.tde.pre"]], pdat[["score.tde.pos"]])
if (length(unique(pdat[["Zona"]])) >= 2) {
aov = anova_test(pdat, score.tde.pos ~ score.tde.pre + grupo*Zona)
laov[["grupo:Zona"]] <- get_anova_table(aov)
}
if (length(unique(pdat[["Zona"]])) >= 2) {
pwcs <- list()
pwcs[["Zona"]] <- emmeans_test(
group_by(pdat, grupo), score.tde.pos ~ Zona,
covariate = score.tde.pre, p.adjust.method = "bonferroni")
pwcs[["grupo"]] <- emmeans_test(
group_by(pdat, Zona), score.tde.pos ~ grupo,
covariate = score.tde.pre, p.adjust.method = "bonferroni")
pwc <- plyr::rbind.fill(pwcs[["grupo"]], pwcs[["Zona"]])
pwc <- pwc[,c("grupo","Zona", colnames(pwc)[!colnames(pwc) %in% c("grupo","Zona")])]
}
if (length(unique(pdat[["Zona"]])) >= 2) {
pwc.long <- emmeans_test(dplyr::group_by_at(pdat.long, c("grupo","Zona")),
score.tde ~ time,
p.adjust.method = "bonferroni")
lpwc[["grupo:Zona"]] <- plyr::rbind.fill(pwc, pwc.long)
}
if (length(unique(pdat[["Zona"]])) >= 2) {
ds <- get.descriptives(pdat, "score.tde.pos", c("grupo","Zona"), covar = "score.tde.pre")
ds <- merge(ds[ds$variable != "score.tde.pre",],
ds[ds$variable == "score.tde.pre", !colnames(ds) %in% c("variable")],
by = c("grupo","Zona"), all.x = T, suffixes = c("", ".score.tde.pre"))
ds <- merge(get_emmeans(pwcs[["grupo"]]), ds,
by = c("grupo","Zona"), suffixes = c(".emms", ""))
ds <- ds[,c("grupo","Zona","n","mean.score.tde.pre","se.score.tde.pre","mean","se",
"emmean","se.emms","conf.low","conf.high")]
colnames(ds) <- c("grupo","Zona", "N", paste0(c("M","SE")," (pre)"),
paste0(c("M","SE"), " (unadj)"),
paste0(c("M", "SE"), " (adj)"), "conf.low", "conf.high")
lemms[["grupo:Zona"]] <- ds
}
Computing
ANCOVA and PairWise After removing non-normal data (OK)
if (length(unique(pdat[["Zona"]])) >= 2) {
wdat = pdat
res = residuals(lm(score.tde.pos ~ score.tde.pre + grupo*Zona, data = wdat))
non.normal = getNonNormal(res, wdat$id, plimit = 0.05)
wdat = wdat[!wdat$id %in% non.normal,]
wdat.long <- rbind(wdat[,c("id","grupo","Zona")], wdat[,c("id","grupo","Zona")])
wdat.long[["time"]] <- c(rep("pre", nrow(wdat)), rep("pos", nrow(wdat)))
wdat.long[["time"]] <- factor(wdat.long[["time"]], c("pre","pos"))
wdat.long[["score.tde"]] <- c(wdat[["score.tde.pre"]], wdat[["score.tde.pos"]])
ldat[["grupo:Zona"]] = wdat
(non.normal)
}
## [1] "P962" "P984" "P1971" "P2929" "P1117" "P2848" "P2917" "P2870" "P2871" "P2835" "P921" "P2959" "P3029" "P1139" "P572"
## [16] "P2983" "P2858" "P3021" "P3080" "P606" "P2933" "P914" "P2831" "P2946" "P3533" "P2953" "P2886" "P3548" "P3476" "P2861"
## [31] "P2880" "P2982" "P2995" "P3674" "P2864" "P2883" "P2950" "P2004" "P3475" "P3012" "P3010" "P3015" "P2975" "P2937" "P3660"
## [46] "P2910" "P1691" "P2868" "P2860" "P1878" "P609" "P908" "P2997" "P2956" "P2973" "P2879" "P2854" "P3024" "P2967" "P2948"
## [61] "P2909" "P1056" "P2964"
if (length(unique(pdat[["Zona"]])) >= 2) {
aov = anova_test(wdat, score.tde.pos ~ score.tde.pre + grupo*Zona)
laov[["grupo:Zona"]] <- merge(get_anova_table(aov), laov[["grupo:Zona"]],
by="Effect", suffixes = c("","'"))
df = get_anova_table(aov)
}
| score.tde.pre |
1 |
735 |
3559.226 |
0 |
* |
0.829 |
| grupo |
1 |
735 |
26.138 |
0 |
* |
0.034 |
| Zona |
1 |
735 |
54.679 |
0 |
* |
0.069 |
| grupo:Zona |
1 |
735 |
14.155 |
0 |
* |
0.019 |
if (length(unique(pdat[["Zona"]])) >= 2) {
pwcs <- list()
pwcs[["Zona"]] <- emmeans_test(
group_by(wdat, grupo), score.tde.pos ~ Zona,
covariate = score.tde.pre, p.adjust.method = "bonferroni")
pwcs[["grupo"]] <- emmeans_test(
group_by(wdat, Zona), score.tde.pos ~ grupo,
covariate = score.tde.pre, p.adjust.method = "bonferroni")
pwc <- plyr::rbind.fill(pwcs[["grupo"]], pwcs[["Zona"]])
pwc <- pwc[,c("grupo","Zona", colnames(pwc)[!colnames(pwc) %in% c("grupo","Zona")])]
}
|
Rural |
score.tde.pre*grupo |
score.tde.pos |
Controle |
Experimental |
735 |
-2.009 |
0.045 |
0.045 |
* |
|
Urbana |
score.tde.pre*grupo |
score.tde.pos |
Controle |
Experimental |
735 |
-6.023 |
0.000 |
0.000 |
**** |
| Controle |
|
score.tde.pre*Zona |
score.tde.pos |
Rural |
Urbana |
735 |
7.675 |
0.000 |
0.000 |
**** |
| Experimental |
|
score.tde.pre*Zona |
score.tde.pos |
Rural |
Urbana |
735 |
3.188 |
0.001 |
0.001 |
** |
if (length(unique(pdat[["Zona"]])) >= 2) {
pwc.long <- emmeans_test(dplyr::group_by_at(wdat.long, c("grupo","Zona")),
score.tde ~ time,
p.adjust.method = "bonferroni")
lpwc[["grupo:Zona"]] <- merge(plyr::rbind.fill(pwc, pwc.long),
lpwc[["grupo:Zona"]],
by=c("grupo","Zona","term",".y.","group1","group2"),
suffixes = c("","'"))
}
| Controle |
Rural |
time |
score.tde |
pre |
pos |
1472 |
0.543 |
0.588 |
0.588 |
ns |
| Controle |
Urbana |
time |
score.tde |
pre |
pos |
1472 |
3.191 |
0.001 |
0.001 |
** |
| Experimental |
Rural |
time |
score.tde |
pre |
pos |
1472 |
-0.333 |
0.739 |
0.739 |
ns |
| Experimental |
Urbana |
time |
score.tde |
pre |
pos |
1472 |
1.001 |
0.317 |
0.317 |
ns |
if (length(unique(pdat[["Zona"]])) >= 2) {
ds <- get.descriptives(wdat, "score.tde.pos", c("grupo","Zona"), covar = "score.tde.pre")
ds <- merge(ds[ds$variable != "score.tde.pre",],
ds[ds$variable == "score.tde.pre", !colnames(ds) %in% c("variable")],
by = c("grupo","Zona"), all.x = T, suffixes = c("", ".score.tde.pre"))
ds <- merge(get_emmeans(pwcs[["grupo"]]), ds,
by = c("grupo","Zona"), suffixes = c(".emms", ""))
ds <- ds[,c("grupo","Zona","n","mean.score.tde.pre","se.score.tde.pre",
"mean","se","emmean","se.emms","conf.low","conf.high")]
colnames(ds) <- c("grupo","Zona", "N", paste0(c("M","SE")," (pre)"),
paste0(c("M","SE"), " (unadj)"),
paste0(c("M", "SE"), " (adj)"), "conf.low", "conf.high")
lemms[["grupo:Zona"]] <- merge(ds, lemms[["grupo:Zona"]],
by=c("grupo","Zona"), suffixes = c("","'"))
}
| Controle |
Rural |
228 |
35.956 |
1.330 |
34.978 |
1.426 |
35.358 |
0.547 |
34.284 |
36.432 |
| Controle |
Urbana |
101 |
39.743 |
1.823 |
31.099 |
2.044 |
27.763 |
0.824 |
26.145 |
29.380 |
| Experimental |
Rural |
260 |
34.215 |
1.113 |
34.777 |
1.186 |
36.865 |
0.514 |
35.857 |
37.874 |
| Experimental |
Urbana |
151 |
38.318 |
1.389 |
36.099 |
1.501 |
34.161 |
0.673 |
32.840 |
35.483 |
Plots for ancova
if (length(unique(pdat[["Zona"]])) >= 2) {
ggPlotAoC2(pwcs, "grupo", "Zona", aov, ylab = "Writing (TDE)",
subtitle = which(aov$Effect == "grupo:Zona"), addParam = "errorbar") +
ggplot2::scale_color_manual(values = color[["Zona"]]) +
if (ymin.ci < ymax.ci) ggplot2::ylim(ymin.ci, ymax.ci)
}
## Scale for colour is already present.
## Adding another scale for colour, which will replace the existing scale.

if (length(unique(pdat[["Zona"]])) >= 2) {
ggPlotAoC2(pwcs, "Zona", "grupo", aov, ylab = "Writing (TDE)",
subtitle = which(aov$Effect == "grupo:Zona"), addParam = "errorbar") +
ggplot2::scale_color_manual(values = color[["grupo"]]) +
if (ymin.ci < ymax.ci) ggplot2::ylim(ymin.ci, ymax.ci)
}
## Scale for colour is already present.
## Adding another scale for colour, which will replace the existing scale.

if (length(unique(pdat[["Zona"]])) >= 2) {
plots <- twoWayAncovaBoxPlots(
wdat, "score.tde.pos", c("grupo","Zona"), aov, pwcs, covar = "score.tde.pre",
theme = "classic", color = color[["grupo:Zona"]],
subtitle = which(aov$Effect == "grupo:Zona"))
}
if (length(unique(pdat[["Zona"]])) >= 2) {
plots[["grupo:Zona"]] + ggplot2::ylab("Writing (TDE)") +
ggplot2::scale_x_discrete(labels=c('pre', 'pos')) +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)
}
## Warning: No shared levels found between `names(values)` of the manual scale and the data's colour values.

if (length(unique(pdat[["Zona"]])) >= 2) {
plots <- twoWayAncovaBoxPlots(
wdat.long, "score.tde", c("grupo","Zona"), aov, pwc.long,
pre.post = "time",
theme = "classic", color = color$prepost)
}
if (length(unique(pdat[["Zona"]])) >= 2)
plots[["grupo:Zona"]] + ggplot2::ylab("Writing (TDE)") +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)

Checking linearity
assumption
if (length(unique(pdat[["Zona"]])) >= 2) {
ggscatter(wdat, x = "score.tde.pre", y = "score.tde.pos", size = 0.5,
facet.by = c("grupo","Zona"), add = "reg.line")+
stat_regline_equation(
aes(label = paste(..eq.label.., ..rr.label.., sep = "~~~~"))
) +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)
}

if (length(unique(pdat[["Zona"]])) >= 2) {
ggscatter(wdat, x = "score.tde.pre", y = "score.tde.pos", size = 0.5,
color = "grupo", facet.by = "Zona", add = "reg.line")+
stat_regline_equation(
aes(label = paste(..eq.label.., ..rr.label.., sep = "~~~~"), color = grupo)
) +
ggplot2::labs(subtitle = rstatix::get_test_label(aov, detailed = T, row = which(aov$Effect == "grupo:Zona"))) +
ggplot2::scale_color_manual(values = color[["grupo"]]) +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)
}

if (length(unique(pdat[["Zona"]])) >= 2) {
ggscatter(wdat, x = "score.tde.pre", y = "score.tde.pos", size = 0.5,
color = "Zona", facet.by = "grupo", add = "reg.line")+
stat_regline_equation(
aes(label = paste(..eq.label.., ..rr.label.., sep = "~~~~"), color = Zona)
) +
ggplot2::labs(subtitle = rstatix::get_test_label(aov, detailed = T, row = which(aov$Effect == "grupo:Zona"))) +
ggplot2::scale_color_manual(values = color[["Zona"]]) +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)
}

Checking normality and
homogeneity
if (length(unique(pdat[["Zona"]])) >= 2)
res <- augment(lm(score.tde.pos ~ score.tde.pre + grupo*Zona, data = wdat))
if (length(unique(pdat[["Zona"]])) >= 2)
shapiro_test(res$.resid)
## # A tibble: 1 × 3
## variable statistic p.value
## <chr> <dbl> <dbl>
## 1 res$.resid 0.995 0.0253
if (length(unique(pdat[["Zona"]])) >= 2)
levene_test(res, .resid ~ grupo*Zona)
## # A tibble: 1 × 4
## df1 df2 statistic p
## <int> <int> <dbl> <dbl>
## 1 3 736 2.40 0.0667
ANCOVA and
Pairwise for two factors grupo:Cor.Raca
Without remove non-normal
data
pdat = remove_group_data(dat[!is.na(dat[["grupo"]]) & !is.na(dat[["Cor.Raca"]]),],
"score.tde.pos", c("grupo","Cor.Raca"))
## Warning: There was 1 warning in `mutate()`.
## ℹ In argument: `ci = abs(stats::qt(alpha/2, .data$n - 1) * .data$se)`.
## Caused by warning:
## ! There was 1 warning in `mutate()`.
## ℹ In argument: `ci = abs(stats::qt(alpha/2, .data$n - 1) * .data$se)`.
## Caused by warning in `stats::qt()`:
## ! NaNs produced
pdat = pdat[pdat[["Cor.Raca"]] %in% do.call(
intersect, lapply(unique(pdat[["grupo"]]), FUN = function(x) {
unique(pdat[["Cor.Raca"]][which(pdat[["grupo"]] == x)])
})),]
pdat[["grupo"]] = factor(pdat[["grupo"]], level[["grupo"]])
pdat[["Cor.Raca"]] = factor(
pdat[["Cor.Raca"]],
level[["Cor.Raca"]][level[["Cor.Raca"]] %in% unique(pdat[["Cor.Raca"]])])
pdat.long <- rbind(pdat[,c("id","grupo","Cor.Raca")], pdat[,c("id","grupo","Cor.Raca")])
pdat.long[["time"]] <- c(rep("pre", nrow(pdat)), rep("pos", nrow(pdat)))
pdat.long[["time"]] <- factor(pdat.long[["time"]], c("pre","pos"))
pdat.long[["score.tde"]] <- c(pdat[["score.tde.pre"]], pdat[["score.tde.pos"]])
if (length(unique(pdat[["Cor.Raca"]])) >= 2) {
aov = anova_test(pdat, score.tde.pos ~ score.tde.pre + grupo*Cor.Raca)
laov[["grupo:Cor.Raca"]] <- get_anova_table(aov)
}
if (length(unique(pdat[["Cor.Raca"]])) >= 2) {
pwcs <- list()
pwcs[["Cor.Raca"]] <- emmeans_test(
group_by(pdat, grupo), score.tde.pos ~ Cor.Raca,
covariate = score.tde.pre, p.adjust.method = "bonferroni")
pwcs[["grupo"]] <- emmeans_test(
group_by(pdat, Cor.Raca), score.tde.pos ~ grupo,
covariate = score.tde.pre, p.adjust.method = "bonferroni")
pwc <- plyr::rbind.fill(pwcs[["grupo"]], pwcs[["Cor.Raca"]])
pwc <- pwc[,c("grupo","Cor.Raca", colnames(pwc)[!colnames(pwc) %in% c("grupo","Cor.Raca")])]
}
if (length(unique(pdat[["Cor.Raca"]])) >= 2) {
pwc.long <- emmeans_test(dplyr::group_by_at(pdat.long, c("grupo","Cor.Raca")),
score.tde ~ time,
p.adjust.method = "bonferroni")
lpwc[["grupo:Cor.Raca"]] <- plyr::rbind.fill(pwc, pwc.long)
}
if (length(unique(pdat[["Cor.Raca"]])) >= 2) {
ds <- get.descriptives(pdat, "score.tde.pos", c("grupo","Cor.Raca"), covar = "score.tde.pre")
ds <- merge(ds[ds$variable != "score.tde.pre",],
ds[ds$variable == "score.tde.pre", !colnames(ds) %in% c("variable")],
by = c("grupo","Cor.Raca"), all.x = T, suffixes = c("", ".score.tde.pre"))
ds <- merge(get_emmeans(pwcs[["grupo"]]), ds,
by = c("grupo","Cor.Raca"), suffixes = c(".emms", ""))
ds <- ds[,c("grupo","Cor.Raca","n","mean.score.tde.pre","se.score.tde.pre","mean","se",
"emmean","se.emms","conf.low","conf.high")]
colnames(ds) <- c("grupo","Cor.Raca", "N", paste0(c("M","SE")," (pre)"),
paste0(c("M","SE"), " (unadj)"),
paste0(c("M", "SE"), " (adj)"), "conf.low", "conf.high")
lemms[["grupo:Cor.Raca"]] <- ds
}
Computing
ANCOVA and PairWise After removing non-normal data (OK)
if (length(unique(pdat[["Cor.Raca"]])) >= 2) {
wdat = pdat
res = residuals(lm(score.tde.pos ~ score.tde.pre + grupo*Cor.Raca, data = wdat))
non.normal = getNonNormal(res, wdat$id, plimit = 0.05)
wdat = wdat[!wdat$id %in% non.normal,]
wdat.long <- rbind(wdat[,c("id","grupo","Cor.Raca")], wdat[,c("id","grupo","Cor.Raca")])
wdat.long[["time"]] <- c(rep("pre", nrow(wdat)), rep("pos", nrow(wdat)))
wdat.long[["time"]] <- factor(wdat.long[["time"]], c("pre","pos"))
wdat.long[["score.tde"]] <- c(wdat[["score.tde.pre"]], wdat[["score.tde.pos"]])
ldat[["grupo:Cor.Raca"]] = wdat
(non.normal)
}
## [1] "P1128" "P1126" "P908" "P2995" "P1139" "P3021" "P2871" "P2858" "P3637" "P2870" "P1117" "P572" "P2978" "P2975" "P2983"
## [16] "P2904" "P2835" "P3000" "P2888" "P2993" "P2905" "P1118" "P1804" "P3007" "P3228" "P3029" "P2865" "P2967" "P1018" "P2994"
## [31] "P2953" "P2997" "P3476" "P3054" "P606"
if (length(unique(pdat[["Cor.Raca"]])) >= 2) {
aov = anova_test(wdat, score.tde.pos ~ score.tde.pre + grupo*Cor.Raca)
laov[["grupo:Cor.Raca"]] <- merge(get_anova_table(aov), laov[["grupo:Cor.Raca"]],
by="Effect", suffixes = c("","'"))
df = get_anova_table(aov)
}
| score.tde.pre |
1 |
447 |
1620.497 |
0.000 |
* |
0.784 |
| grupo |
1 |
447 |
7.311 |
0.007 |
* |
0.016 |
| Cor.Raca |
2 |
447 |
3.357 |
0.036 |
* |
0.015 |
| grupo:Cor.Raca |
2 |
447 |
1.174 |
0.310 |
|
0.005 |
if (length(unique(pdat[["Cor.Raca"]])) >= 2) {
pwcs <- list()
pwcs[["Cor.Raca"]] <- emmeans_test(
group_by(wdat, grupo), score.tde.pos ~ Cor.Raca,
covariate = score.tde.pre, p.adjust.method = "bonferroni")
pwcs[["grupo"]] <- emmeans_test(
group_by(wdat, Cor.Raca), score.tde.pos ~ grupo,
covariate = score.tde.pre, p.adjust.method = "bonferroni")
pwc <- plyr::rbind.fill(pwcs[["grupo"]], pwcs[["Cor.Raca"]])
pwc <- pwc[,c("grupo","Cor.Raca", colnames(pwc)[!colnames(pwc) %in% c("grupo","Cor.Raca")])]
}
|
Parda |
score.tde.pre*grupo |
score.tde.pos |
Controle |
Experimental |
447 |
-1.911 |
0.057 |
0.057 |
ns |
|
Indígena |
score.tde.pre*grupo |
score.tde.pos |
Controle |
Experimental |
447 |
0.274 |
0.784 |
0.784 |
ns |
|
Branca |
score.tde.pre*grupo |
score.tde.pos |
Controle |
Experimental |
447 |
-2.442 |
0.015 |
0.015 |
* |
| Controle |
|
score.tde.pre*Cor.Raca |
score.tde.pos |
Parda |
Indígena |
447 |
-2.163 |
0.031 |
0.093 |
ns |
| Controle |
|
score.tde.pre*Cor.Raca |
score.tde.pos |
Parda |
Branca |
447 |
1.334 |
0.183 |
0.549 |
ns |
| Controle |
|
score.tde.pre*Cor.Raca |
score.tde.pos |
Indígena |
Branca |
447 |
2.687 |
0.007 |
0.022 |
* |
| Experimental |
|
score.tde.pre*Cor.Raca |
score.tde.pos |
Parda |
Indígena |
447 |
-1.314 |
0.190 |
0.569 |
ns |
| Experimental |
|
score.tde.pre*Cor.Raca |
score.tde.pos |
Parda |
Branca |
447 |
-0.308 |
0.759 |
1.000 |
ns |
| Experimental |
|
score.tde.pre*Cor.Raca |
score.tde.pos |
Indígena |
Branca |
447 |
1.060 |
0.290 |
0.870 |
ns |
if (length(unique(pdat[["Cor.Raca"]])) >= 2) {
pwc.long <- emmeans_test(dplyr::group_by_at(wdat.long, c("grupo","Cor.Raca")),
score.tde ~ time,
p.adjust.method = "bonferroni")
lpwc[["grupo:Cor.Raca"]] <- merge(plyr::rbind.fill(pwc, pwc.long),
lpwc[["grupo:Cor.Raca"]],
by=c("grupo","Cor.Raca","term",".y.","group1","group2"),
suffixes = c("","'"))
}
| Controle |
Parda |
time |
score.tde |
pre |
pos |
896 |
1.090 |
0.276 |
0.276 |
ns |
| Controle |
Indígena |
time |
score.tde |
pre |
pos |
896 |
-0.441 |
0.659 |
0.659 |
ns |
| Controle |
Branca |
time |
score.tde |
pre |
pos |
896 |
1.172 |
0.241 |
0.241 |
ns |
| Experimental |
Parda |
time |
score.tde |
pre |
pos |
896 |
0.163 |
0.870 |
0.870 |
ns |
| Experimental |
Indígena |
time |
score.tde |
pre |
pos |
896 |
-0.463 |
0.644 |
0.644 |
ns |
| Experimental |
Branca |
time |
score.tde |
pre |
pos |
896 |
-0.019 |
0.985 |
0.985 |
ns |
if (length(unique(pdat[["Cor.Raca"]])) >= 2) {
ds <- get.descriptives(wdat, "score.tde.pos", c("grupo","Cor.Raca"), covar = "score.tde.pre")
ds <- merge(ds[ds$variable != "score.tde.pre",],
ds[ds$variable == "score.tde.pre", !colnames(ds) %in% c("variable")],
by = c("grupo","Cor.Raca"), all.x = T, suffixes = c("", ".score.tde.pre"))
ds <- merge(get_emmeans(pwcs[["grupo"]]), ds,
by = c("grupo","Cor.Raca"), suffixes = c(".emms", ""))
ds <- ds[,c("grupo","Cor.Raca","n","mean.score.tde.pre","se.score.tde.pre",
"mean","se","emmean","se.emms","conf.low","conf.high")]
colnames(ds) <- c("grupo","Cor.Raca", "N", paste0(c("M","SE")," (pre)"),
paste0(c("M","SE"), " (unadj)"),
paste0(c("M", "SE"), " (adj)"), "conf.low", "conf.high")
lemms[["grupo:Cor.Raca"]] <- merge(ds, lemms[["grupo:Cor.Raca"]],
by=c("grupo","Cor.Raca"), suffixes = c("","'"))
}
| Controle |
Branca |
45 |
41.378 |
2.626 |
36.600 |
3.007 |
30.951 |
1.399 |
28.202 |
33.701 |
| Controle |
Indígena |
11 |
42.000 |
5.215 |
45.636 |
6.009 |
39.393 |
2.820 |
33.851 |
44.935 |
| Controle |
Parda |
150 |
36.320 |
1.578 |
33.887 |
1.695 |
33.075 |
0.763 |
31.576 |
34.574 |
| Experimental |
Branca |
58 |
34.517 |
2.651 |
34.586 |
2.746 |
35.499 |
1.226 |
33.088 |
37.909 |
| Experimental |
Indígena |
15 |
27.067 |
4.406 |
30.333 |
4.574 |
38.371 |
2.420 |
33.616 |
43.126 |
| Experimental |
Parda |
175 |
33.851 |
1.343 |
33.514 |
1.460 |
35.064 |
0.707 |
33.674 |
36.453 |
Plots for ancova
if (length(unique(pdat[["Cor.Raca"]])) >= 2) {
ggPlotAoC2(pwcs, "grupo", "Cor.Raca", aov, ylab = "Writing (TDE)",
subtitle = which(aov$Effect == "grupo:Cor.Raca"), addParam = "errorbar") +
ggplot2::scale_color_manual(values = color[["Cor.Raca"]]) +
if (ymin.ci < ymax.ci) ggplot2::ylim(ymin.ci, ymax.ci)
}
## Scale for colour is already present.
## Adding another scale for colour, which will replace the existing scale.

if (length(unique(pdat[["Cor.Raca"]])) >= 2) {
ggPlotAoC2(pwcs, "Cor.Raca", "grupo", aov, ylab = "Writing (TDE)",
subtitle = which(aov$Effect == "grupo:Cor.Raca"), addParam = "errorbar") +
ggplot2::scale_color_manual(values = color[["grupo"]]) +
if (ymin.ci < ymax.ci) ggplot2::ylim(ymin.ci, ymax.ci)
}
## Scale for colour is already present.
## Adding another scale for colour, which will replace the existing scale.

if (length(unique(pdat[["Cor.Raca"]])) >= 2) {
plots <- twoWayAncovaBoxPlots(
wdat, "score.tde.pos", c("grupo","Cor.Raca"), aov, pwcs, covar = "score.tde.pre",
theme = "classic", color = color[["grupo:Cor.Raca"]],
subtitle = which(aov$Effect == "grupo:Cor.Raca"))
}
if (length(unique(pdat[["Cor.Raca"]])) >= 2) {
plots[["grupo:Cor.Raca"]] + ggplot2::ylab("Writing (TDE)") +
ggplot2::scale_x_discrete(labels=c('pre', 'pos')) +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)
}
## Warning: No shared levels found between `names(values)` of the manual scale and the data's colour values.

if (length(unique(pdat[["Cor.Raca"]])) >= 2) {
plots <- twoWayAncovaBoxPlots(
wdat.long, "score.tde", c("grupo","Cor.Raca"), aov, pwc.long,
pre.post = "time",
theme = "classic", color = color$prepost)
}
if (length(unique(pdat[["Cor.Raca"]])) >= 2)
plots[["grupo:Cor.Raca"]] + ggplot2::ylab("Writing (TDE)") +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)

Checking linearity
assumption
if (length(unique(pdat[["Cor.Raca"]])) >= 2) {
ggscatter(wdat, x = "score.tde.pre", y = "score.tde.pos", size = 0.5,
facet.by = c("grupo","Cor.Raca"), add = "reg.line")+
stat_regline_equation(
aes(label = paste(..eq.label.., ..rr.label.., sep = "~~~~"))
) +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)
}

if (length(unique(pdat[["Cor.Raca"]])) >= 2) {
ggscatter(wdat, x = "score.tde.pre", y = "score.tde.pos", size = 0.5,
color = "grupo", facet.by = "Cor.Raca", add = "reg.line")+
stat_regline_equation(
aes(label = paste(..eq.label.., ..rr.label.., sep = "~~~~"), color = grupo)
) +
ggplot2::labs(subtitle = rstatix::get_test_label(aov, detailed = T, row = which(aov$Effect == "grupo:Cor.Raca"))) +
ggplot2::scale_color_manual(values = color[["grupo"]]) +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)
}

if (length(unique(pdat[["Cor.Raca"]])) >= 2) {
ggscatter(wdat, x = "score.tde.pre", y = "score.tde.pos", size = 0.5,
color = "Cor.Raca", facet.by = "grupo", add = "reg.line")+
stat_regline_equation(
aes(label = paste(..eq.label.., ..rr.label.., sep = "~~~~"), color = Cor.Raca)
) +
ggplot2::labs(subtitle = rstatix::get_test_label(aov, detailed = T, row = which(aov$Effect == "grupo:Cor.Raca"))) +
ggplot2::scale_color_manual(values = color[["Cor.Raca"]]) +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)
}

Checking normality and
homogeneity
if (length(unique(pdat[["Cor.Raca"]])) >= 2)
res <- augment(lm(score.tde.pos ~ score.tde.pre + grupo*Cor.Raca, data = wdat))
if (length(unique(pdat[["Cor.Raca"]])) >= 2)
shapiro_test(res$.resid)
## # A tibble: 1 × 3
## variable statistic p.value
## <chr> <dbl> <dbl>
## 1 res$.resid 0.992 0.0140
if (length(unique(pdat[["Cor.Raca"]])) >= 2)
levene_test(res, .resid ~ grupo*Cor.Raca)
## # A tibble: 1 × 4
## df1 df2 statistic p
## <int> <int> <dbl> <dbl>
## 1 5 448 0.202 0.962
ANCOVA and
Pairwise for two factors grupo:Serie
Without remove non-normal
data
pdat = remove_group_data(dat[!is.na(dat[["grupo"]]) & !is.na(dat[["Serie"]]),],
"score.tde.pos", c("grupo","Serie"))
pdat = pdat[pdat[["Serie"]] %in% do.call(
intersect, lapply(unique(pdat[["grupo"]]), FUN = function(x) {
unique(pdat[["Serie"]][which(pdat[["grupo"]] == x)])
})),]
pdat[["grupo"]] = factor(pdat[["grupo"]], level[["grupo"]])
pdat[["Serie"]] = factor(
pdat[["Serie"]],
level[["Serie"]][level[["Serie"]] %in% unique(pdat[["Serie"]])])
pdat.long <- rbind(pdat[,c("id","grupo","Serie")], pdat[,c("id","grupo","Serie")])
pdat.long[["time"]] <- c(rep("pre", nrow(pdat)), rep("pos", nrow(pdat)))
pdat.long[["time"]] <- factor(pdat.long[["time"]], c("pre","pos"))
pdat.long[["score.tde"]] <- c(pdat[["score.tde.pre"]], pdat[["score.tde.pos"]])
if (length(unique(pdat[["Serie"]])) >= 2) {
aov = anova_test(pdat, score.tde.pos ~ score.tde.pre + grupo*Serie)
laov[["grupo:Serie"]] <- get_anova_table(aov)
}
if (length(unique(pdat[["Serie"]])) >= 2) {
pwcs <- list()
pwcs[["Serie"]] <- emmeans_test(
group_by(pdat, grupo), score.tde.pos ~ Serie,
covariate = score.tde.pre, p.adjust.method = "bonferroni")
pwcs[["grupo"]] <- emmeans_test(
group_by(pdat, Serie), score.tde.pos ~ grupo,
covariate = score.tde.pre, p.adjust.method = "bonferroni")
pwc <- plyr::rbind.fill(pwcs[["grupo"]], pwcs[["Serie"]])
pwc <- pwc[,c("grupo","Serie", colnames(pwc)[!colnames(pwc) %in% c("grupo","Serie")])]
}
if (length(unique(pdat[["Serie"]])) >= 2) {
pwc.long <- emmeans_test(dplyr::group_by_at(pdat.long, c("grupo","Serie")),
score.tde ~ time,
p.adjust.method = "bonferroni")
lpwc[["grupo:Serie"]] <- plyr::rbind.fill(pwc, pwc.long)
}
if (length(unique(pdat[["Serie"]])) >= 2) {
ds <- get.descriptives(pdat, "score.tde.pos", c("grupo","Serie"), covar = "score.tde.pre")
ds <- merge(ds[ds$variable != "score.tde.pre",],
ds[ds$variable == "score.tde.pre", !colnames(ds) %in% c("variable")],
by = c("grupo","Serie"), all.x = T, suffixes = c("", ".score.tde.pre"))
ds <- merge(get_emmeans(pwcs[["grupo"]]), ds,
by = c("grupo","Serie"), suffixes = c(".emms", ""))
ds <- ds[,c("grupo","Serie","n","mean.score.tde.pre","se.score.tde.pre","mean","se",
"emmean","se.emms","conf.low","conf.high")]
colnames(ds) <- c("grupo","Serie", "N", paste0(c("M","SE")," (pre)"),
paste0(c("M","SE"), " (unadj)"),
paste0(c("M", "SE"), " (adj)"), "conf.low", "conf.high")
lemms[["grupo:Serie"]] <- ds
}
Computing
ANCOVA and PairWise After removing non-normal data (OK)
if (length(unique(pdat[["Serie"]])) >= 2) {
wdat = pdat
res = residuals(lm(score.tde.pos ~ score.tde.pre + grupo*Serie, data = wdat))
non.normal = getNonNormal(res, wdat$id, plimit = 0.05)
wdat = wdat[!wdat$id %in% non.normal,]
wdat.long <- rbind(wdat[,c("id","grupo","Serie")], wdat[,c("id","grupo","Serie")])
wdat.long[["time"]] <- c(rep("pre", nrow(wdat)), rep("pos", nrow(wdat)))
wdat.long[["time"]] <- factor(wdat.long[["time"]], c("pre","pos"))
wdat.long[["score.tde"]] <- c(wdat[["score.tde.pre"]], wdat[["score.tde.pos"]])
ldat[["grupo:Serie"]] = wdat
(non.normal)
}
## [1] "P962" "P1128" "P984" "P1129" "P1971" "P1126" "P1139" "P2835" "P2983" "P572" "P1117" "P3571" "P3537" "P3574" "P1983"
## [16] "P2848" "P809" "P3637" "P2910" "P976" "P2870" "P2969" "P2866" "P3732" "P2913" "P921" "P1018" "P2964" "P1111" "P2967"
## [31] "P3228" "P929" "P2959" "P2886" "P914" "P2995" "P2982" "P2375" "P3241" "P2975" "P908" "P2905" "P2986" "P1068" "P2946"
## [46] "P2904" "P1878" "P2883" "P2973" "P3533" "P3019" "P2865" "P2864" "P1056" "P1152" "P2937" "P2876" "P3007" "P2978" "P2950"
## [61] "P2871" "P2953" "P2917" "P2948" "P609"
if (length(unique(pdat[["Serie"]])) >= 2) {
aov = anova_test(wdat, score.tde.pos ~ score.tde.pre + grupo*Serie)
laov[["grupo:Serie"]] <- merge(get_anova_table(aov), laov[["grupo:Serie"]],
by="Effect", suffixes = c("","'"))
df = get_anova_table(aov)
}
| score.tde.pre |
1 |
1047 |
3720.788 |
0.000 |
* |
0.780 |
| grupo |
1 |
1047 |
23.855 |
0.000 |
* |
0.022 |
| Serie |
3 |
1047 |
34.727 |
0.000 |
* |
0.090 |
| grupo:Serie |
3 |
1047 |
3.528 |
0.015 |
* |
0.010 |
if (length(unique(pdat[["Serie"]])) >= 2) {
pwcs <- list()
pwcs[["Serie"]] <- emmeans_test(
group_by(wdat, grupo), score.tde.pos ~ Serie,
covariate = score.tde.pre, p.adjust.method = "bonferroni")
pwcs[["grupo"]] <- emmeans_test(
group_by(wdat, Serie), score.tde.pos ~ grupo,
covariate = score.tde.pre, p.adjust.method = "bonferroni")
pwc <- plyr::rbind.fill(pwcs[["grupo"]], pwcs[["Serie"]])
pwc <- pwc[,c("grupo","Serie", colnames(pwc)[!colnames(pwc) %in% c("grupo","Serie")])]
}
|
6 ano |
score.tde.pre*grupo |
score.tde.pos |
Controle |
Experimental |
1047 |
-0.249 |
0.803 |
0.803 |
ns |
|
7 ano |
score.tde.pre*grupo |
score.tde.pos |
Controle |
Experimental |
1047 |
-4.500 |
0.000 |
0.000 |
**** |
|
8 ano |
score.tde.pre*grupo |
score.tde.pos |
Controle |
Experimental |
1047 |
-3.348 |
0.001 |
0.001 |
*** |
|
9 ano |
score.tde.pre*grupo |
score.tde.pos |
Controle |
Experimental |
1047 |
-1.694 |
0.091 |
0.091 |
ns |
| Controle |
|
score.tde.pre*Serie |
score.tde.pos |
6 ano |
7 ano |
1047 |
1.644 |
0.100 |
0.602 |
ns |
| Controle |
|
score.tde.pre*Serie |
score.tde.pos |
6 ano |
8 ano |
1047 |
-2.433 |
0.015 |
0.091 |
ns |
| Controle |
|
score.tde.pre*Serie |
score.tde.pos |
6 ano |
9 ano |
1047 |
-5.074 |
0.000 |
0.000 |
**** |
| Controle |
|
score.tde.pre*Serie |
score.tde.pos |
7 ano |
8 ano |
1047 |
-3.939 |
0.000 |
0.001 |
*** |
| Controle |
|
score.tde.pre*Serie |
score.tde.pos |
7 ano |
9 ano |
1047 |
-6.756 |
0.000 |
0.000 |
**** |
| Controle |
|
score.tde.pre*Serie |
score.tde.pos |
8 ano |
9 ano |
1047 |
-2.300 |
0.022 |
0.130 |
ns |
| Experimental |
|
score.tde.pre*Serie |
score.tde.pos |
6 ano |
7 ano |
1047 |
-2.574 |
0.010 |
0.061 |
ns |
| Experimental |
|
score.tde.pre*Serie |
score.tde.pos |
6 ano |
8 ano |
1047 |
-6.514 |
0.000 |
0.000 |
**** |
| Experimental |
|
score.tde.pre*Serie |
score.tde.pos |
6 ano |
9 ano |
1047 |
-7.114 |
0.000 |
0.000 |
**** |
| Experimental |
|
score.tde.pre*Serie |
score.tde.pos |
7 ano |
8 ano |
1047 |
-4.242 |
0.000 |
0.000 |
*** |
| Experimental |
|
score.tde.pre*Serie |
score.tde.pos |
7 ano |
9 ano |
1047 |
-4.930 |
0.000 |
0.000 |
**** |
| Experimental |
|
score.tde.pre*Serie |
score.tde.pos |
8 ano |
9 ano |
1047 |
-0.688 |
0.492 |
1.000 |
ns |
if (length(unique(pdat[["Serie"]])) >= 2) {
pwc.long <- emmeans_test(dplyr::group_by_at(wdat.long, c("grupo","Serie")),
score.tde ~ time,
p.adjust.method = "bonferroni")
lpwc[["grupo:Serie"]] <- merge(plyr::rbind.fill(pwc, pwc.long),
lpwc[["grupo:Serie"]],
by=c("grupo","Serie","term",".y.","group1","group2"),
suffixes = c("","'"))
}
| Controle |
6 ano |
time |
score.tde |
pre |
pos |
2096 |
1.733 |
0.083 |
0.083 |
ns |
| Controle |
7 ano |
time |
score.tde |
pre |
pos |
2096 |
2.740 |
0.006 |
0.006 |
** |
| Controle |
8 ano |
time |
score.tde |
pre |
pos |
2096 |
0.783 |
0.433 |
0.433 |
ns |
| Controle |
9 ano |
time |
score.tde |
pre |
pos |
2096 |
-0.131 |
0.896 |
0.896 |
ns |
| Experimental |
6 ano |
time |
score.tde |
pre |
pos |
2096 |
1.773 |
0.076 |
0.076 |
ns |
| Experimental |
7 ano |
time |
score.tde |
pre |
pos |
2096 |
0.944 |
0.345 |
0.345 |
ns |
| Experimental |
8 ano |
time |
score.tde |
pre |
pos |
2096 |
-0.962 |
0.336 |
0.336 |
ns |
| Experimental |
9 ano |
time |
score.tde |
pre |
pos |
2096 |
-1.132 |
0.258 |
0.258 |
ns |
if (length(unique(pdat[["Serie"]])) >= 2) {
ds <- get.descriptives(wdat, "score.tde.pos", c("grupo","Serie"), covar = "score.tde.pre")
ds <- merge(ds[ds$variable != "score.tde.pre",],
ds[ds$variable == "score.tde.pre", !colnames(ds) %in% c("variable")],
by = c("grupo","Serie"), all.x = T, suffixes = c("", ".score.tde.pre"))
ds <- merge(get_emmeans(pwcs[["grupo"]]), ds,
by = c("grupo","Serie"), suffixes = c(".emms", ""))
ds <- ds[,c("grupo","Serie","n","mean.score.tde.pre","se.score.tde.pre",
"mean","se","emmean","se.emms","conf.low","conf.high")]
colnames(ds) <- c("grupo","Serie", "N", paste0(c("M","SE")," (pre)"),
paste0(c("M","SE"), " (unadj)"),
paste0(c("M", "SE"), " (adj)"), "conf.low", "conf.high")
lemms[["grupo:Serie"]] <- merge(ds, lemms[["grupo:Serie"]],
by=c("grupo","Serie"), suffixes = c("","'"))
}
| Controle |
6 ano |
126 |
28.444 |
1.766 |
24.619 |
1.828 |
32.399 |
0.756 |
30.915 |
33.882 |
| Controle |
7 ano |
127 |
34.024 |
1.632 |
28.000 |
1.773 |
30.663 |
0.744 |
29.204 |
32.123 |
| Controle |
8 ano |
86 |
42.430 |
1.785 |
40.337 |
1.933 |
35.292 |
0.906 |
33.514 |
37.069 |
| Controle |
9 ano |
116 |
46.612 |
1.611 |
46.914 |
1.537 |
38.034 |
0.790 |
36.483 |
39.584 |
| Experimental |
6 ano |
150 |
28.607 |
1.324 |
25.020 |
1.367 |
32.651 |
0.694 |
31.288 |
34.013 |
| Experimental |
7 ano |
170 |
36.294 |
1.168 |
34.500 |
1.284 |
35.081 |
0.642 |
33.822 |
36.340 |
| Experimental |
8 ano |
141 |
39.248 |
1.525 |
41.255 |
1.600 |
39.128 |
0.705 |
37.744 |
40.512 |
| Experimental |
9 ano |
140 |
43.143 |
1.354 |
45.514 |
1.288 |
39.815 |
0.713 |
38.416 |
41.215 |
Plots for ancova
if (length(unique(pdat[["Serie"]])) >= 2) {
ggPlotAoC2(pwcs, "grupo", "Serie", aov, ylab = "Writing (TDE)",
subtitle = which(aov$Effect == "grupo:Serie"), addParam = "errorbar") +
ggplot2::scale_color_manual(values = color[["Serie"]]) +
if (ymin.ci < ymax.ci) ggplot2::ylim(ymin.ci, ymax.ci)
}
## Scale for colour is already present.
## Adding another scale for colour, which will replace the existing scale.

if (length(unique(pdat[["Serie"]])) >= 2) {
ggPlotAoC2(pwcs, "Serie", "grupo", aov, ylab = "Writing (TDE)",
subtitle = which(aov$Effect == "grupo:Serie"), addParam = "errorbar") +
ggplot2::scale_color_manual(values = color[["grupo"]]) +
if (ymin.ci < ymax.ci) ggplot2::ylim(ymin.ci, ymax.ci)
}
## Scale for colour is already present.
## Adding another scale for colour, which will replace the existing scale.

if (length(unique(pdat[["Serie"]])) >= 2) {
plots <- twoWayAncovaBoxPlots(
wdat, "score.tde.pos", c("grupo","Serie"), aov, pwcs, covar = "score.tde.pre",
theme = "classic", color = color[["grupo:Serie"]],
subtitle = which(aov$Effect == "grupo:Serie"))
}
if (length(unique(pdat[["Serie"]])) >= 2) {
plots[["grupo:Serie"]] + ggplot2::ylab("Writing (TDE)") +
ggplot2::scale_x_discrete(labels=c('pre', 'pos')) +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)
}

if (length(unique(pdat[["Serie"]])) >= 2) {
plots <- twoWayAncovaBoxPlots(
wdat.long, "score.tde", c("grupo","Serie"), aov, pwc.long,
pre.post = "time",
theme = "classic", color = color$prepost)
}
if (length(unique(pdat[["Serie"]])) >= 2)
plots[["grupo:Serie"]] + ggplot2::ylab("Writing (TDE)") +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)

Checking linearity
assumption
if (length(unique(pdat[["Serie"]])) >= 2) {
ggscatter(wdat, x = "score.tde.pre", y = "score.tde.pos", size = 0.5,
facet.by = c("grupo","Serie"), add = "reg.line")+
stat_regline_equation(
aes(label = paste(..eq.label.., ..rr.label.., sep = "~~~~"))
) +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)
}

if (length(unique(pdat[["Serie"]])) >= 2) {
ggscatter(wdat, x = "score.tde.pre", y = "score.tde.pos", size = 0.5,
color = "grupo", facet.by = "Serie", add = "reg.line")+
stat_regline_equation(
aes(label = paste(..eq.label.., ..rr.label.., sep = "~~~~"), color = grupo)
) +
ggplot2::labs(subtitle = rstatix::get_test_label(aov, detailed = T, row = which(aov$Effect == "grupo:Serie"))) +
ggplot2::scale_color_manual(values = color[["grupo"]]) +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)
}

if (length(unique(pdat[["Serie"]])) >= 2) {
ggscatter(wdat, x = "score.tde.pre", y = "score.tde.pos", size = 0.5,
color = "Serie", facet.by = "grupo", add = "reg.line")+
stat_regline_equation(
aes(label = paste(..eq.label.., ..rr.label.., sep = "~~~~"), color = Serie)
) +
ggplot2::labs(subtitle = rstatix::get_test_label(aov, detailed = T, row = which(aov$Effect == "grupo:Serie"))) +
ggplot2::scale_color_manual(values = color[["Serie"]]) +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)
}

Checking normality and
homogeneity
if (length(unique(pdat[["Serie"]])) >= 2)
res <- augment(lm(score.tde.pos ~ score.tde.pre + grupo*Serie, data = wdat))
if (length(unique(pdat[["Serie"]])) >= 2)
shapiro_test(res$.resid)
## # A tibble: 1 × 3
## variable statistic p.value
## <chr> <dbl> <dbl>
## 1 res$.resid 0.996 0.00727
if (length(unique(pdat[["Serie"]])) >= 2)
levene_test(res, .resid ~ grupo*Serie)
## # A tibble: 1 × 4
## df1 df2 statistic p
## <int> <int> <dbl> <dbl>
## 1 7 1048 7.87 0.00000000252
ANCOVA
and Pairwise for two factors
grupo:score.tde.quintile
Without remove non-normal
data
pdat = remove_group_data(dat[!is.na(dat[["grupo"]]) & !is.na(dat[["score.tde.quintile"]]),],
"score.tde.pos", c("grupo","score.tde.quintile"))
pdat = pdat[pdat[["score.tde.quintile"]] %in% do.call(
intersect, lapply(unique(pdat[["grupo"]]), FUN = function(x) {
unique(pdat[["score.tde.quintile"]][which(pdat[["grupo"]] == x)])
})),]
pdat[["grupo"]] = factor(pdat[["grupo"]], level[["grupo"]])
pdat[["score.tde.quintile"]] = factor(
pdat[["score.tde.quintile"]],
level[["score.tde.quintile"]][level[["score.tde.quintile"]] %in% unique(pdat[["score.tde.quintile"]])])
pdat.long <- rbind(pdat[,c("id","grupo","score.tde.quintile")], pdat[,c("id","grupo","score.tde.quintile")])
pdat.long[["time"]] <- c(rep("pre", nrow(pdat)), rep("pos", nrow(pdat)))
pdat.long[["time"]] <- factor(pdat.long[["time"]], c("pre","pos"))
pdat.long[["score.tde"]] <- c(pdat[["score.tde.pre"]], pdat[["score.tde.pos"]])
if (length(unique(pdat[["score.tde.quintile"]])) >= 2) {
aov = anova_test(pdat, score.tde.pos ~ score.tde.pre + grupo*score.tde.quintile)
laov[["grupo:score.tde.quintile"]] <- get_anova_table(aov)
}
if (length(unique(pdat[["score.tde.quintile"]])) >= 2) {
pwcs <- list()
pwcs[["score.tde.quintile"]] <- emmeans_test(
group_by(pdat, grupo), score.tde.pos ~ score.tde.quintile,
covariate = score.tde.pre, p.adjust.method = "bonferroni")
pwcs[["grupo"]] <- emmeans_test(
group_by(pdat, score.tde.quintile), score.tde.pos ~ grupo,
covariate = score.tde.pre, p.adjust.method = "bonferroni")
pwc <- plyr::rbind.fill(pwcs[["grupo"]], pwcs[["score.tde.quintile"]])
pwc <- pwc[,c("grupo","score.tde.quintile", colnames(pwc)[!colnames(pwc) %in% c("grupo","score.tde.quintile")])]
}
if (length(unique(pdat[["score.tde.quintile"]])) >= 2) {
pwc.long <- emmeans_test(dplyr::group_by_at(pdat.long, c("grupo","score.tde.quintile")),
score.tde ~ time,
p.adjust.method = "bonferroni")
lpwc[["grupo:score.tde.quintile"]] <- plyr::rbind.fill(pwc, pwc.long)
}
if (length(unique(pdat[["score.tde.quintile"]])) >= 2) {
ds <- get.descriptives(pdat, "score.tde.pos", c("grupo","score.tde.quintile"), covar = "score.tde.pre")
ds <- merge(ds[ds$variable != "score.tde.pre",],
ds[ds$variable == "score.tde.pre", !colnames(ds) %in% c("variable")],
by = c("grupo","score.tde.quintile"), all.x = T, suffixes = c("", ".score.tde.pre"))
ds <- merge(get_emmeans(pwcs[["grupo"]]), ds,
by = c("grupo","score.tde.quintile"), suffixes = c(".emms", ""))
ds <- ds[,c("grupo","score.tde.quintile","n","mean.score.tde.pre","se.score.tde.pre","mean","se",
"emmean","se.emms","conf.low","conf.high")]
colnames(ds) <- c("grupo","score.tde.quintile", "N", paste0(c("M","SE")," (pre)"),
paste0(c("M","SE"), " (unadj)"),
paste0(c("M", "SE"), " (adj)"), "conf.low", "conf.high")
lemms[["grupo:score.tde.quintile"]] <- ds
}
Computing
ANCOVA and PairWise After removing non-normal data (OK)
if (length(unique(pdat[["score.tde.quintile"]])) >= 2) {
wdat = pdat
res = residuals(lm(score.tde.pos ~ score.tde.pre + grupo*score.tde.quintile, data = wdat))
non.normal = getNonNormal(res, wdat$id, plimit = 0.05)
wdat = wdat[!wdat$id %in% non.normal,]
wdat.long <- rbind(wdat[,c("id","grupo","score.tde.quintile")], wdat[,c("id","grupo","score.tde.quintile")])
wdat.long[["time"]] <- c(rep("pre", nrow(wdat)), rep("pos", nrow(wdat)))
wdat.long[["time"]] <- factor(wdat.long[["time"]], c("pre","pos"))
wdat.long[["score.tde"]] <- c(wdat[["score.tde.pre"]], wdat[["score.tde.pos"]])
ldat[["grupo:score.tde.quintile"]] = wdat
(non.normal)
}
## [1] "P984" "P1128" "P962" "P1129" "P3637" "P1971" "P1117" "P1126" "P2950" "P2883" "P2910" "P3019" "P2982" "P2904" "P2864"
## [16] "P2959" "P3054" "P1139" "P2835" "P921" "P2983" "P2994" "P2880" "P2917" "P2848" "P2866" "P3005" "P929" "P2870" "P572"
## [31] "P3674" "P3548" "P3021" "P809" "P3080" "P2997" "P3666" "P3660" "P2867" "P1878" "P2858" "P2846" "P1840" "P3007" "P3545"
## [46] "P3533" "P2861" "P2993" "P2953" "P1111" "P2969" "P1804" "P2876" "P1018" "P3228" "P2854" "P2871" "P2929" "P908" "P2964"
## [61] "P1046" "P2190" "P2879" "P2948" "P1118" "P2967" "P2956" "P2973" "P2946" "P2865" "P2831" "P3000" "P2995" "P976" "P2937"
## [76] "P1145" "P3029" "P2971" "P2951" "P2886" "P2913" "P2977" "P1885" "P3026" "P931" "P3475" "P924" "P2952" "P2974" "P1024"
## [91] "P3520" "P3136" "P914" "P3280" "P1130" "P1825" "P2850" "P2888" "P1968" "P1083" "P1887" "P2905" "P3459" "P3574"
if (length(unique(pdat[["score.tde.quintile"]])) >= 2) {
aov = anova_test(wdat, score.tde.pos ~ score.tde.pre + grupo*score.tde.quintile)
laov[["grupo:score.tde.quintile"]] <- merge(get_anova_table(aov), laov[["grupo:score.tde.quintile"]],
by="Effect", suffixes = c("","'"))
df = get_anova_table(aov)
}
| score.tde.pre |
1 |
1006 |
264.709 |
0.000 |
* |
0.208 |
| grupo |
1 |
1006 |
37.367 |
0.000 |
* |
0.036 |
| score.tde.quintile |
4 |
1006 |
3.315 |
0.010 |
* |
0.013 |
| grupo:score.tde.quintile |
4 |
1006 |
2.738 |
0.028 |
* |
0.011 |
if (length(unique(pdat[["score.tde.quintile"]])) >= 2) {
pwcs <- list()
pwcs[["score.tde.quintile"]] <- emmeans_test(
group_by(wdat, grupo), score.tde.pos ~ score.tde.quintile,
covariate = score.tde.pre, p.adjust.method = "bonferroni")
pwcs[["grupo"]] <- emmeans_test(
group_by(wdat, score.tde.quintile), score.tde.pos ~ grupo,
covariate = score.tde.pre, p.adjust.method = "bonferroni")
pwc <- plyr::rbind.fill(pwcs[["grupo"]], pwcs[["score.tde.quintile"]])
pwc <- pwc[,c("grupo","score.tde.quintile", colnames(pwc)[!colnames(pwc) %in% c("grupo","score.tde.quintile")])]
}
|
1st quintile |
score.tde.pre*grupo |
score.tde.pos |
Controle |
Experimental |
1006 |
-2.176 |
0.030 |
0.030 |
* |
|
2nd quintile |
score.tde.pre*grupo |
score.tde.pos |
Controle |
Experimental |
1006 |
-2.614 |
0.009 |
0.009 |
** |
|
3rd quintile |
score.tde.pre*grupo |
score.tde.pos |
Controle |
Experimental |
1006 |
-4.957 |
0.000 |
0.000 |
**** |
|
4th quintile |
score.tde.pre*grupo |
score.tde.pos |
Controle |
Experimental |
1006 |
-3.161 |
0.002 |
0.002 |
** |
|
5th quintile |
score.tde.pre*grupo |
score.tde.pos |
Controle |
Experimental |
1006 |
-1.453 |
0.147 |
0.147 |
ns |
| Controle |
|
score.tde.pre*score.tde.quintile |
score.tde.pos |
1st quintile |
2nd quintile |
1006 |
1.565 |
0.118 |
1.000 |
ns |
| Controle |
|
score.tde.pre*score.tde.quintile |
score.tde.pos |
1st quintile |
3rd quintile |
1006 |
2.102 |
0.036 |
0.358 |
ns |
| Controle |
|
score.tde.pre*score.tde.quintile |
score.tde.pos |
1st quintile |
4th quintile |
1006 |
-0.118 |
0.906 |
1.000 |
ns |
| Controle |
|
score.tde.pre*score.tde.quintile |
score.tde.pos |
1st quintile |
5th quintile |
1006 |
-0.370 |
0.711 |
1.000 |
ns |
| Controle |
|
score.tde.pre*score.tde.quintile |
score.tde.pos |
2nd quintile |
3rd quintile |
1006 |
1.201 |
0.230 |
1.000 |
ns |
| Controle |
|
score.tde.pre*score.tde.quintile |
score.tde.pos |
2nd quintile |
4th quintile |
1006 |
-1.486 |
0.138 |
1.000 |
ns |
| Controle |
|
score.tde.pre*score.tde.quintile |
score.tde.pos |
2nd quintile |
5th quintile |
1006 |
-1.515 |
0.130 |
1.000 |
ns |
| Controle |
|
score.tde.pre*score.tde.quintile |
score.tde.pos |
3rd quintile |
4th quintile |
1006 |
-3.359 |
0.001 |
0.008 |
** |
| Controle |
|
score.tde.pre*score.tde.quintile |
score.tde.pos |
3rd quintile |
5th quintile |
1006 |
-3.197 |
0.001 |
0.014 |
* |
| Controle |
|
score.tde.pre*score.tde.quintile |
score.tde.pos |
4th quintile |
5th quintile |
1006 |
-0.703 |
0.482 |
1.000 |
ns |
| Experimental |
|
score.tde.pre*score.tde.quintile |
score.tde.pos |
1st quintile |
2nd quintile |
1006 |
0.882 |
0.378 |
1.000 |
ns |
| Experimental |
|
score.tde.pre*score.tde.quintile |
score.tde.pos |
1st quintile |
3rd quintile |
1006 |
-0.005 |
0.996 |
1.000 |
ns |
| Experimental |
|
score.tde.pre*score.tde.quintile |
score.tde.pos |
1st quintile |
4th quintile |
1006 |
-0.482 |
0.630 |
1.000 |
ns |
| Experimental |
|
score.tde.pre*score.tde.quintile |
score.tde.pos |
1st quintile |
5th quintile |
1006 |
-0.099 |
0.921 |
1.000 |
ns |
| Experimental |
|
score.tde.pre*score.tde.quintile |
score.tde.pos |
2nd quintile |
3rd quintile |
1006 |
-1.014 |
0.311 |
1.000 |
ns |
| Experimental |
|
score.tde.pre*score.tde.quintile |
score.tde.pos |
2nd quintile |
4th quintile |
1006 |
-1.503 |
0.133 |
1.000 |
ns |
| Experimental |
|
score.tde.pre*score.tde.quintile |
score.tde.pos |
2nd quintile |
5th quintile |
1006 |
-0.722 |
0.470 |
1.000 |
ns |
| Experimental |
|
score.tde.pre*score.tde.quintile |
score.tde.pos |
3rd quintile |
4th quintile |
1006 |
-0.991 |
0.322 |
1.000 |
ns |
| Experimental |
|
score.tde.pre*score.tde.quintile |
score.tde.pos |
3rd quintile |
5th quintile |
1006 |
-0.183 |
0.855 |
1.000 |
ns |
| Experimental |
|
score.tde.pre*score.tde.quintile |
score.tde.pos |
4th quintile |
5th quintile |
1006 |
0.707 |
0.480 |
1.000 |
ns |
if (length(unique(pdat[["score.tde.quintile"]])) >= 2) {
pwc.long <- emmeans_test(dplyr::group_by_at(wdat.long, c("grupo","score.tde.quintile")),
score.tde ~ time,
p.adjust.method = "bonferroni")
lpwc[["grupo:score.tde.quintile"]] <- merge(plyr::rbind.fill(pwc, pwc.long),
lpwc[["grupo:score.tde.quintile"]],
by=c("grupo","score.tde.quintile","term",".y.","group1","group2"),
suffixes = c("","'"))
}
| Controle |
1st quintile |
time |
score.tde |
pre |
pos |
2014 |
1.024 |
0.306 |
0.306 |
ns |
| Controle |
2nd quintile |
time |
score.tde |
pre |
pos |
2014 |
3.105 |
0.002 |
0.002 |
** |
| Controle |
3rd quintile |
time |
score.tde |
pre |
pos |
2014 |
4.794 |
0.000 |
0.000 |
**** |
| Controle |
4th quintile |
time |
score.tde |
pre |
pos |
2014 |
3.089 |
0.002 |
0.002 |
** |
| Controle |
5th quintile |
time |
score.tde |
pre |
pos |
2014 |
2.704 |
0.007 |
0.007 |
** |
| Experimental |
1st quintile |
time |
score.tde |
pre |
pos |
2014 |
-1.416 |
0.157 |
0.157 |
ns |
| Experimental |
2nd quintile |
time |
score.tde |
pre |
pos |
2014 |
0.824 |
0.410 |
0.410 |
ns |
| Experimental |
3rd quintile |
time |
score.tde |
pre |
pos |
2014 |
0.152 |
0.879 |
0.879 |
ns |
| Experimental |
4th quintile |
time |
score.tde |
pre |
pos |
2014 |
-0.569 |
0.569 |
0.569 |
ns |
| Experimental |
5th quintile |
time |
score.tde |
pre |
pos |
2014 |
1.120 |
0.263 |
0.263 |
ns |
if (length(unique(pdat[["score.tde.quintile"]])) >= 2) {
ds <- get.descriptives(wdat, "score.tde.pos", c("grupo","score.tde.quintile"), covar = "score.tde.pre")
ds <- merge(ds[ds$variable != "score.tde.pre",],
ds[ds$variable == "score.tde.pre", !colnames(ds) %in% c("variable")],
by = c("grupo","score.tde.quintile"), all.x = T, suffixes = c("", ".score.tde.pre"))
ds <- merge(get_emmeans(pwcs[["grupo"]]), ds,
by = c("grupo","score.tde.quintile"), suffixes = c(".emms", ""))
ds <- ds[,c("grupo","score.tde.quintile","n","mean.score.tde.pre","se.score.tde.pre",
"mean","se","emmean","se.emms","conf.low","conf.high")]
colnames(ds) <- c("grupo","score.tde.quintile", "N", paste0(c("M","SE")," (pre)"),
paste0(c("M","SE"), " (unadj)"),
paste0(c("M", "SE"), " (adj)"), "conf.low", "conf.high")
lemms[["grupo:score.tde.quintile"]] <- merge(ds, lemms[["grupo:score.tde.quintile"]],
by=c("grupo","score.tde.quintile"), suffixes = c("","'"))
}
| Controle |
1st quintile |
112 |
9.152 |
0.522 |
8.205 |
0.750 |
34.585 |
1.783 |
31.086 |
38.083 |
| Controle |
2nd quintile |
51 |
24.392 |
0.530 |
20.137 |
1.288 |
32.089 |
1.322 |
29.495 |
34.682 |
| Controle |
3rd quintile |
42 |
38.905 |
0.489 |
31.667 |
1.800 |
29.879 |
1.216 |
27.493 |
32.265 |
| Controle |
4th quintile |
125 |
47.544 |
0.223 |
44.840 |
0.850 |
34.874 |
0.932 |
33.046 |
36.702 |
| Controle |
5th quintile |
116 |
58.819 |
0.505 |
56.362 |
0.792 |
35.722 |
1.463 |
32.851 |
38.593 |
| Experimental |
1st quintile |
108 |
9.602 |
0.522 |
10.935 |
0.788 |
36.889 |
1.765 |
33.425 |
40.352 |
| Experimental |
2nd quintile |
101 |
25.842 |
0.347 |
25.040 |
0.976 |
35.619 |
1.016 |
33.625 |
37.613 |
| Experimental |
3rd quintile |
116 |
37.371 |
0.301 |
37.233 |
0.859 |
36.898 |
0.729 |
35.467 |
38.328 |
| Experimental |
4th quintile |
120 |
46.800 |
0.230 |
47.308 |
0.725 |
38.047 |
0.915 |
36.251 |
39.842 |
| Experimental |
5th quintile |
126 |
58.563 |
0.448 |
57.587 |
0.700 |
37.189 |
1.435 |
34.372 |
40.006 |
Plots for ancova
if (length(unique(pdat[["score.tde.quintile"]])) >= 2) {
ggPlotAoC2(pwcs, "grupo", "score.tde.quintile", aov, ylab = "Writing (TDE)",
subtitle = which(aov$Effect == "grupo:score.tde.quintile"), addParam = "errorbar") +
ggplot2::scale_color_manual(values = color[["score.tde.quintile"]]) +
if (ymin.ci < ymax.ci) ggplot2::ylim(ymin.ci, ymax.ci)
}
## Scale for colour is already present.
## Adding another scale for colour, which will replace the existing scale.

if (length(unique(pdat[["score.tde.quintile"]])) >= 2) {
ggPlotAoC2(pwcs, "score.tde.quintile", "grupo", aov, ylab = "Writing (TDE)",
subtitle = which(aov$Effect == "grupo:score.tde.quintile"), addParam = "errorbar") +
ggplot2::scale_color_manual(values = color[["grupo"]]) +
if (ymin.ci < ymax.ci) ggplot2::ylim(ymin.ci, ymax.ci)
}
## Scale for colour is already present.
## Adding another scale for colour, which will replace the existing scale.

if (length(unique(pdat[["score.tde.quintile"]])) >= 2) {
plots <- twoWayAncovaBoxPlots(
wdat, "score.tde.pos", c("grupo","score.tde.quintile"), aov, pwcs, covar = "score.tde.pre",
theme = "classic", color = color[["grupo:score.tde.quintile"]],
subtitle = which(aov$Effect == "grupo:score.tde.quintile"))
}
if (length(unique(pdat[["score.tde.quintile"]])) >= 2) {
plots[["grupo:score.tde.quintile"]] + ggplot2::ylab("Writing (TDE)") +
ggplot2::scale_x_discrete(labels=c('pre', 'pos')) +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)
}
## Warning: No shared levels found between `names(values)` of the manual scale and the data's colour values.

if (length(unique(pdat[["score.tde.quintile"]])) >= 2) {
plots <- twoWayAncovaBoxPlots(
wdat.long, "score.tde", c("grupo","score.tde.quintile"), aov, pwc.long,
pre.post = "time",
theme = "classic", color = color$prepost)
}
if (length(unique(pdat[["score.tde.quintile"]])) >= 2)
plots[["grupo:score.tde.quintile"]] + ggplot2::ylab("Writing (TDE)") +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)

Checking linearity
assumption
if (length(unique(pdat[["score.tde.quintile"]])) >= 2) {
ggscatter(wdat, x = "score.tde.pre", y = "score.tde.pos", size = 0.5,
facet.by = c("grupo","score.tde.quintile"), add = "reg.line")+
stat_regline_equation(
aes(label = paste(..eq.label.., ..rr.label.., sep = "~~~~"))
) +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)
}

if (length(unique(pdat[["score.tde.quintile"]])) >= 2) {
ggscatter(wdat, x = "score.tde.pre", y = "score.tde.pos", size = 0.5,
color = "grupo", facet.by = "score.tde.quintile", add = "reg.line")+
stat_regline_equation(
aes(label = paste(..eq.label.., ..rr.label.., sep = "~~~~"), color = grupo)
) +
ggplot2::labs(subtitle = rstatix::get_test_label(aov, detailed = T, row = which(aov$Effect == "grupo:score.tde.quintile"))) +
ggplot2::scale_color_manual(values = color[["grupo"]]) +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)
}

if (length(unique(pdat[["score.tde.quintile"]])) >= 2) {
ggscatter(wdat, x = "score.tde.pre", y = "score.tde.pos", size = 0.5,
color = "score.tde.quintile", facet.by = "grupo", add = "reg.line")+
stat_regline_equation(
aes(label = paste(..eq.label.., ..rr.label.., sep = "~~~~"), color = score.tde.quintile)
) +
ggplot2::labs(subtitle = rstatix::get_test_label(aov, detailed = T, row = which(aov$Effect == "grupo:score.tde.quintile"))) +
ggplot2::scale_color_manual(values = color[["score.tde.quintile"]]) +
if (ymin < ymax) ggplot2::ylim(ymin, ymax)
}

Checking normality and
homogeneity
if (length(unique(pdat[["score.tde.quintile"]])) >= 2)
res <- augment(lm(score.tde.pos ~ score.tde.pre + grupo*score.tde.quintile, data = wdat))
if (length(unique(pdat[["score.tde.quintile"]])) >= 2)
shapiro_test(res$.resid)
## # A tibble: 1 × 3
## variable statistic p.value
## <chr> <dbl> <dbl>
## 1 res$.resid 0.996 0.0129
if (length(unique(pdat[["score.tde.quintile"]])) >= 2)
levene_test(res, .resid ~ grupo*score.tde.quintile)
## # A tibble: 1 × 4
## df1 df2 statistic p
## <int> <int> <dbl> <dbl>
## 1 9 1007 5.39 0.000000314
Summary of Results
Descriptive Statistics
df <- get.descriptives(ldat[["grupo"]], c(dv.pre, dv.pos), c("grupo"),
include.global = T, symmetry.test = T, normality.test = F)
df <- plyr::rbind.fill(
df, do.call(plyr::rbind.fill, lapply(lfatores2, FUN = function(f) {
if (nrow(dat) > 0 && sum(!is.na(unique(dat[[f]]))) > 1 && paste0("grupo:",f) %in% names(ldat))
get.descriptives(ldat[[paste0("grupo:",f)]], c(dv.pre,dv.pos), c("grupo", f),
symmetry.test = T, normality.test = F)
}))
)
df <- df[,c(fatores1[fatores1 %in% colnames(df)],"variable",
colnames(df)[!colnames(df) %in% c(fatores1,"variable")])]
| Controle |
|
|
|
|
|
score.tde.pre |
424 |
37.351 |
45.0 |
0 |
75 |
20.069 |
0.975 |
1.916 |
34.00 |
YES |
-0.404 |
-1.165 |
| Experimental |
|
|
|
|
|
score.tde.pre |
557 |
36.770 |
39.0 |
0 |
73 |
17.478 |
0.741 |
1.455 |
26.00 |
YES |
-0.313 |
-0.796 |
|
|
|
|
|
|
score.tde.pre |
981 |
37.021 |
42.0 |
0 |
75 |
18.635 |
0.595 |
1.168 |
29.00 |
YES |
-0.358 |
-0.971 |
| Controle |
|
|
|
|
|
score.tde.pos |
424 |
35.432 |
40.0 |
0 |
73 |
20.965 |
1.018 |
2.001 |
38.00 |
YES |
-0.277 |
-1.217 |
| Experimental |
|
|
|
|
|
score.tde.pos |
557 |
37.230 |
40.0 |
0 |
74 |
18.335 |
0.777 |
1.526 |
27.00 |
YES |
-0.294 |
-0.858 |
|
|
|
|
|
|
score.tde.pos |
981 |
36.453 |
40.0 |
0 |
74 |
19.525 |
0.623 |
1.223 |
31.00 |
YES |
-0.305 |
-1.008 |
| Controle |
F |
|
|
|
|
score.tde.pre |
208 |
40.635 |
47.0 |
0 |
72 |
18.428 |
1.278 |
2.519 |
28.00 |
NO |
-0.660 |
-0.764 |
| Controle |
M |
|
|
|
|
score.tde.pre |
211 |
33.934 |
42.0 |
0 |
75 |
21.161 |
1.457 |
2.872 |
38.00 |
YES |
-0.126 |
-1.375 |
| Experimental |
F |
|
|
|
|
score.tde.pre |
276 |
39.623 |
43.5 |
0 |
73 |
17.500 |
1.053 |
2.074 |
26.00 |
YES |
-0.490 |
-0.692 |
| Experimental |
M |
|
|
|
|
score.tde.pre |
279 |
34.082 |
36.0 |
0 |
71 |
17.200 |
1.030 |
2.027 |
26.00 |
YES |
-0.174 |
-0.823 |
| Controle |
F |
|
|
|
|
score.tde.pos |
208 |
38.615 |
44.0 |
0 |
71 |
19.482 |
1.351 |
2.663 |
30.00 |
NO |
-0.532 |
-0.975 |
| Controle |
M |
|
|
|
|
score.tde.pos |
211 |
32.393 |
33.0 |
0 |
73 |
22.040 |
1.517 |
2.991 |
38.00 |
YES |
-0.018 |
-1.332 |
| Experimental |
F |
|
|
|
|
score.tde.pos |
276 |
40.272 |
45.0 |
0 |
73 |
18.658 |
1.123 |
2.211 |
28.25 |
YES |
-0.484 |
-0.805 |
| Experimental |
M |
|
|
|
|
score.tde.pos |
279 |
34.484 |
37.0 |
0 |
74 |
17.582 |
1.053 |
2.072 |
25.00 |
YES |
-0.205 |
-0.757 |
| Controle |
|
Rural |
|
|
|
score.tde.pre |
228 |
35.956 |
43.5 |
0 |
69 |
20.084 |
1.330 |
2.621 |
37.00 |
YES |
-0.398 |
-1.296 |
| Controle |
|
Urbana |
|
|
|
score.tde.pre |
101 |
39.743 |
45.0 |
1 |
75 |
18.324 |
1.823 |
3.617 |
28.00 |
YES |
-0.349 |
-0.771 |
| Experimental |
|
Rural |
|
|
|
score.tde.pre |
260 |
34.215 |
34.5 |
0 |
73 |
17.945 |
1.113 |
2.192 |
27.50 |
YES |
-0.096 |
-0.905 |
| Experimental |
|
Urbana |
|
|
|
score.tde.pre |
151 |
38.318 |
42.0 |
0 |
71 |
17.068 |
1.389 |
2.745 |
23.50 |
NO |
-0.526 |
-0.563 |
| Controle |
|
Rural |
|
|
|
score.tde.pos |
228 |
34.978 |
42.0 |
0 |
72 |
21.528 |
1.426 |
2.809 |
38.25 |
YES |
-0.286 |
-1.280 |
| Controle |
|
Urbana |
|
|
|
score.tde.pos |
101 |
31.099 |
30.0 |
0 |
73 |
20.538 |
2.044 |
4.054 |
36.00 |
YES |
0.126 |
-1.232 |
| Experimental |
|
Rural |
|
|
|
score.tde.pos |
260 |
34.777 |
36.0 |
0 |
72 |
19.125 |
1.186 |
2.336 |
32.00 |
YES |
-0.055 |
-1.056 |
| Experimental |
|
Urbana |
|
|
|
score.tde.pos |
151 |
36.099 |
40.0 |
0 |
74 |
18.449 |
1.501 |
2.967 |
25.50 |
YES |
-0.391 |
-0.821 |
| Controle |
|
|
Parda |
|
|
score.tde.pre |
150 |
36.320 |
43.0 |
0 |
66 |
19.333 |
1.578 |
3.119 |
33.00 |
NO |
-0.563 |
-1.085 |
| Controle |
|
|
Indígena |
|
|
score.tde.pre |
11 |
42.000 |
46.0 |
4 |
65 |
17.297 |
5.215 |
11.621 |
9.50 |
NO |
-1.005 |
-0.104 |
| Controle |
|
|
Branca |
|
|
score.tde.pre |
45 |
41.378 |
46.0 |
2 |
67 |
17.619 |
2.626 |
5.293 |
15.00 |
NO |
-0.795 |
-0.473 |
| Experimental |
|
|
Parda |
|
|
score.tde.pre |
175 |
33.851 |
35.0 |
0 |
68 |
17.760 |
1.343 |
2.650 |
28.00 |
YES |
-0.110 |
-0.955 |
| Experimental |
|
|
Indígena |
|
|
score.tde.pre |
15 |
27.067 |
26.0 |
6 |
54 |
17.065 |
4.406 |
9.450 |
27.00 |
YES |
0.126 |
-1.422 |
| Experimental |
|
|
Branca |
|
|
score.tde.pre |
58 |
34.517 |
35.5 |
0 |
73 |
20.186 |
2.651 |
5.308 |
34.50 |
YES |
-0.030 |
-1.118 |
| Controle |
|
|
Parda |
|
|
score.tde.pos |
150 |
33.887 |
39.5 |
0 |
68 |
20.756 |
1.695 |
3.349 |
39.50 |
YES |
-0.286 |
-1.375 |
| Controle |
|
|
Indígena |
|
|
score.tde.pos |
11 |
45.636 |
52.0 |
4 |
63 |
19.931 |
6.009 |
13.390 |
19.50 |
NO |
-0.968 |
-0.645 |
| Controle |
|
|
Branca |
|
|
score.tde.pos |
45 |
36.600 |
43.0 |
0 |
72 |
20.175 |
3.007 |
6.061 |
28.00 |
YES |
-0.398 |
-0.997 |
| Experimental |
|
|
Parda |
|
|
score.tde.pos |
175 |
33.514 |
32.0 |
0 |
71 |
19.317 |
1.460 |
2.882 |
31.00 |
YES |
0.015 |
-1.092 |
| Experimental |
|
|
Indígena |
|
|
score.tde.pos |
15 |
30.333 |
26.0 |
1 |
57 |
17.715 |
4.574 |
9.810 |
30.50 |
YES |
0.117 |
-1.542 |
| Experimental |
|
|
Branca |
|
|
score.tde.pos |
58 |
34.586 |
34.5 |
0 |
72 |
20.910 |
2.746 |
5.498 |
32.00 |
YES |
0.002 |
-1.163 |
| Controle |
|
|
|
6 ano |
|
score.tde.pre |
126 |
28.444 |
25.0 |
0 |
63 |
19.827 |
1.766 |
3.496 |
37.00 |
YES |
0.114 |
-1.549 |
| Controle |
|
|
|
7 ano |
|
score.tde.pre |
127 |
34.024 |
41.0 |
0 |
69 |
18.393 |
1.632 |
3.230 |
30.00 |
YES |
-0.192 |
-1.277 |
| Controle |
|
|
|
8 ano |
|
score.tde.pre |
86 |
42.430 |
46.5 |
0 |
72 |
16.556 |
1.785 |
3.550 |
18.50 |
NO |
-0.821 |
0.143 |
| Controle |
|
|
|
9 ano |
|
score.tde.pre |
116 |
46.612 |
51.0 |
0 |
75 |
17.352 |
1.611 |
3.191 |
14.25 |
NO |
-1.081 |
0.454 |
| Experimental |
|
|
|
6 ano |
|
score.tde.pre |
150 |
28.607 |
29.0 |
0 |
65 |
16.217 |
1.324 |
2.617 |
24.75 |
YES |
0.006 |
-0.955 |
| Experimental |
|
|
|
7 ano |
|
score.tde.pre |
170 |
36.294 |
37.0 |
0 |
68 |
15.233 |
1.168 |
2.306 |
22.00 |
YES |
-0.132 |
-0.765 |
| Experimental |
|
|
|
8 ano |
|
score.tde.pre |
141 |
39.248 |
44.0 |
0 |
73 |
18.114 |
1.525 |
3.016 |
26.00 |
NO |
-0.545 |
-0.691 |
| Experimental |
|
|
|
9 ano |
|
score.tde.pre |
140 |
43.143 |
45.0 |
0 |
71 |
16.016 |
1.354 |
2.676 |
22.25 |
NO |
-0.646 |
-0.066 |
| Controle |
|
|
|
6 ano |
|
score.tde.pos |
126 |
24.619 |
20.0 |
0 |
66 |
20.516 |
1.828 |
3.617 |
40.75 |
YES |
0.335 |
-1.356 |
| Controle |
|
|
|
7 ano |
|
score.tde.pos |
127 |
28.000 |
24.0 |
0 |
70 |
19.979 |
1.773 |
3.508 |
34.50 |
YES |
0.321 |
-1.224 |
| Controle |
|
|
|
8 ano |
|
score.tde.pos |
86 |
40.337 |
43.5 |
0 |
71 |
17.930 |
1.933 |
3.844 |
26.75 |
NO |
-0.595 |
-0.451 |
| Controle |
|
|
|
9 ano |
|
score.tde.pos |
116 |
46.914 |
50.0 |
0 |
73 |
16.558 |
1.537 |
3.045 |
18.25 |
NO |
-0.869 |
0.170 |
| Experimental |
|
|
|
6 ano |
|
score.tde.pos |
150 |
25.020 |
23.0 |
0 |
65 |
16.738 |
1.367 |
2.701 |
27.00 |
YES |
0.452 |
-0.667 |
| Experimental |
|
|
|
7 ano |
|
score.tde.pos |
170 |
34.500 |
37.0 |
0 |
67 |
16.741 |
1.284 |
2.535 |
25.75 |
YES |
-0.209 |
-0.863 |
| Experimental |
|
|
|
8 ano |
|
score.tde.pos |
141 |
41.255 |
45.0 |
0 |
73 |
18.995 |
1.600 |
3.163 |
26.00 |
NO |
-0.561 |
-0.642 |
| Experimental |
|
|
|
9 ano |
|
score.tde.pos |
140 |
45.514 |
49.0 |
0 |
74 |
15.245 |
1.288 |
2.547 |
19.50 |
NO |
-0.761 |
0.330 |
| Controle |
|
|
|
|
1st quintile |
score.tde.pre |
112 |
9.152 |
10.0 |
0 |
18 |
5.522 |
0.522 |
1.034 |
8.50 |
YES |
-0.089 |
-1.225 |
| Controle |
|
|
|
|
2nd quintile |
score.tde.pre |
51 |
24.392 |
25.0 |
19 |
31 |
3.785 |
0.530 |
1.064 |
6.50 |
YES |
-0.049 |
-1.183 |
| Controle |
|
|
|
|
3rd quintile |
score.tde.pre |
42 |
38.905 |
40.0 |
32 |
42 |
3.169 |
0.489 |
0.987 |
5.75 |
NO |
-0.602 |
-1.073 |
| Controle |
|
|
|
|
4th quintile |
score.tde.pre |
125 |
47.544 |
48.0 |
43 |
51 |
2.497 |
0.223 |
0.442 |
4.00 |
YES |
-0.303 |
-0.977 |
| Controle |
|
|
|
|
5th quintile |
score.tde.pre |
116 |
58.819 |
58.0 |
52 |
75 |
5.437 |
0.505 |
1.000 |
8.00 |
NO |
0.749 |
-0.080 |
| Experimental |
|
|
|
|
1st quintile |
score.tde.pre |
108 |
9.602 |
10.0 |
0 |
18 |
5.426 |
0.522 |
1.035 |
10.00 |
YES |
-0.174 |
-1.164 |
| Experimental |
|
|
|
|
2nd quintile |
score.tde.pre |
101 |
25.842 |
26.0 |
19 |
31 |
3.489 |
0.347 |
0.689 |
6.00 |
YES |
-0.241 |
-1.059 |
| Experimental |
|
|
|
|
3rd quintile |
score.tde.pre |
116 |
37.371 |
38.0 |
32 |
42 |
3.245 |
0.301 |
0.597 |
6.00 |
YES |
-0.131 |
-1.302 |
| Experimental |
|
|
|
|
4th quintile |
score.tde.pre |
120 |
46.800 |
47.0 |
43 |
51 |
2.523 |
0.230 |
0.456 |
4.00 |
YES |
0.068 |
-1.184 |
| Experimental |
|
|
|
|
5th quintile |
score.tde.pre |
126 |
58.563 |
58.0 |
52 |
73 |
5.033 |
0.448 |
0.887 |
8.00 |
NO |
0.662 |
-0.409 |
| Controle |
|
|
|
|
1st quintile |
score.tde.pos |
112 |
8.205 |
5.0 |
0 |
28 |
7.936 |
0.750 |
1.486 |
12.25 |
NO |
0.705 |
-0.691 |
| Controle |
|
|
|
|
2nd quintile |
score.tde.pos |
51 |
20.137 |
20.0 |
4 |
45 |
9.200 |
1.288 |
2.588 |
11.50 |
YES |
0.436 |
0.070 |
| Controle |
|
|
|
|
3rd quintile |
score.tde.pos |
42 |
31.667 |
30.0 |
11 |
59 |
11.665 |
1.800 |
3.635 |
17.75 |
YES |
0.319 |
-0.776 |
| Controle |
|
|
|
|
4th quintile |
score.tde.pos |
125 |
44.840 |
46.0 |
18 |
63 |
9.506 |
0.850 |
1.683 |
14.00 |
NO |
-0.520 |
-0.442 |
| Controle |
|
|
|
|
5th quintile |
score.tde.pos |
116 |
56.362 |
56.5 |
31 |
73 |
8.531 |
0.792 |
1.569 |
10.25 |
YES |
-0.360 |
-0.038 |
| Experimental |
|
|
|
|
1st quintile |
score.tde.pos |
108 |
10.935 |
10.0 |
0 |
36 |
8.185 |
0.788 |
1.561 |
12.00 |
NO |
0.643 |
-0.292 |
| Experimental |
|
|
|
|
2nd quintile |
score.tde.pos |
101 |
25.040 |
25.0 |
4 |
47 |
9.804 |
0.976 |
1.935 |
14.00 |
YES |
-0.110 |
-0.678 |
| Experimental |
|
|
|
|
3rd quintile |
score.tde.pos |
116 |
37.233 |
39.0 |
16 |
55 |
9.256 |
0.859 |
1.702 |
14.25 |
YES |
-0.215 |
-0.813 |
| Experimental |
|
|
|
|
4th quintile |
score.tde.pos |
120 |
47.308 |
48.0 |
22 |
69 |
7.944 |
0.725 |
1.436 |
9.25 |
YES |
-0.124 |
0.510 |
| Experimental |
|
|
|
|
5th quintile |
score.tde.pos |
126 |
57.587 |
57.0 |
39 |
74 |
7.862 |
0.700 |
1.386 |
11.75 |
YES |
-0.167 |
-0.553 |
ANCOVA Table Comparison
df <- do.call(plyr::rbind.fill, laov)
df <- df[!duplicated(df$Effect),]
| 1 |
grupo |
1 |
978 |
24.670 |
0.000 |
* |
0.025 |
1 |
1118 |
13.989 |
0.000 |
* |
0.012 |
| 2 |
score.tde.pre |
1 |
978 |
5874.442 |
0.000 |
* |
0.857 |
1 |
1118 |
2814.834 |
0.000 |
* |
0.716 |
| 4 |
grupo:Sexo |
1 |
969 |
0.548 |
0.459 |
|
0.001 |
1 |
1116 |
0.305 |
0.581 |
|
0.000 |
| 6 |
Sexo |
1 |
969 |
0.058 |
0.810 |
|
0.000 |
1 |
1116 |
0.148 |
0.700 |
|
0.000 |
| 8 |
grupo:Zona |
1 |
735 |
14.155 |
0.000 |
* |
0.019 |
1 |
798 |
9.749 |
0.002 |
* |
0.012 |
| 10 |
Zona |
1 |
735 |
54.679 |
0.000 |
* |
0.069 |
1 |
798 |
35.734 |
0.000 |
* |
0.043 |
| 11 |
Cor.Raca |
2 |
447 |
3.357 |
0.036 |
* |
0.015 |
2 |
482 |
3.984 |
0.019 |
* |
0.016 |
| 13 |
grupo:Cor.Raca |
2 |
447 |
1.174 |
0.310 |
|
0.005 |
2 |
482 |
1.222 |
0.296 |
|
0.005 |
| 16 |
grupo:Serie |
3 |
1047 |
3.528 |
0.015 |
* |
0.010 |
3 |
1112 |
2.801 |
0.039 |
* |
0.008 |
| 18 |
Serie |
3 |
1047 |
34.727 |
0.000 |
* |
0.090 |
3 |
1112 |
30.848 |
0.000 |
* |
0.077 |
| 20 |
grupo:score.tde.quintile |
4 |
1006 |
2.738 |
0.028 |
* |
0.011 |
4 |
1110 |
1.400 |
0.232 |
|
0.005 |
| 22 |
score.tde.quintile |
4 |
1006 |
3.315 |
0.010 |
* |
0.013 |
4 |
1110 |
3.862 |
0.004 |
* |
0.014 |
PairWise Table Comparison
df <- do.call(plyr::rbind.fill, lpwc)
df <- df[,c(names(lfatores)[names(lfatores) %in% colnames(df)],
names(df)[!names(df) %in% c(names(lfatores),"term",".y.")])]
| Controle |
|
|
|
|
|
pre |
pos |
1958 |
1.465 |
0.143 |
0.143 |
ns |
2238 |
3.143 |
0.002 |
0.002 |
** |
| Experimental |
|
|
|
|
|
pre |
pos |
1958 |
-0.402 |
0.688 |
0.688 |
ns |
2238 |
1.295 |
0.195 |
0.195 |
ns |
|
|
|
|
|
|
Controle |
Experimental |
978 |
-4.967 |
0.000 |
0.000 |
**** |
1118 |
-3.740 |
0.000 |
0.000 |
*** |
| Controle |
F |
|
|
|
|
pre |
pos |
1940 |
1.089 |
0.276 |
0.276 |
ns |
2234 |
2.427 |
0.015 |
0.015 |
* |
| Controle |
M |
|
|
|
|
pre |
pos |
1940 |
0.837 |
0.403 |
0.403 |
ns |
2234 |
2.061 |
0.039 |
0.039 |
* |
| Controle |
|
|
|
|
|
F |
M |
969 |
-0.398 |
0.691 |
0.691 |
ns |
1116 |
-0.159 |
0.874 |
0.874 |
ns |
| Experimental |
F |
|
|
|
|
pre |
pos |
1940 |
-0.403 |
0.687 |
0.687 |
ns |
2234 |
0.857 |
0.391 |
0.391 |
ns |
| Experimental |
M |
|
|
|
|
pre |
pos |
1940 |
-0.251 |
0.802 |
0.802 |
ns |
2234 |
0.994 |
0.320 |
0.320 |
ns |
| Experimental |
|
|
|
|
|
F |
M |
969 |
0.663 |
0.507 |
0.507 |
ns |
1116 |
0.652 |
0.514 |
0.514 |
ns |
|
F |
|
|
|
|
Controle |
Experimental |
969 |
-3.977 |
0.000 |
0.000 |
**** |
1116 |
-3.048 |
0.002 |
0.002 |
** |
|
M |
|
|
|
|
Controle |
Experimental |
969 |
-2.953 |
0.003 |
0.003 |
** |
1116 |
-2.236 |
0.026 |
0.026 |
* |
| Controle |
|
|
|
|
|
Rural |
Urbana |
735 |
7.675 |
0.000 |
0.000 |
**** |
798 |
6.249 |
0.000 |
0.000 |
**** |
| Controle |
|
Rural |
|
|
|
pre |
pos |
1472 |
0.543 |
0.588 |
0.588 |
ns |
1598 |
1.120 |
0.263 |
0.263 |
ns |
| Controle |
|
Urbana |
|
|
|
pre |
pos |
1472 |
3.191 |
0.001 |
0.001 |
** |
1598 |
3.728 |
0.000 |
0.000 |
*** |
| Experimental |
|
|
|
|
|
Rural |
Urbana |
735 |
3.188 |
0.001 |
0.001 |
** |
798 |
2.559 |
0.011 |
0.011 |
* |
| Experimental |
|
Rural |
|
|
|
pre |
pos |
1472 |
-0.333 |
0.739 |
0.739 |
ns |
1598 |
0.603 |
0.547 |
0.547 |
ns |
| Experimental |
|
Urbana |
|
|
|
pre |
pos |
1472 |
1.001 |
0.317 |
0.317 |
ns |
1598 |
1.793 |
0.073 |
0.073 |
ns |
|
|
Rural |
|
|
|
Controle |
Experimental |
735 |
-2.009 |
0.045 |
0.045 |
* |
798 |
-0.977 |
0.329 |
0.329 |
ns |
|
|
Urbana |
|
|
|
Controle |
Experimental |
735 |
-6.023 |
0.000 |
0.000 |
**** |
798 |
-4.521 |
0.000 |
0.000 |
**** |
| Controle |
|
|
Branca |
|
|
pre |
pos |
896 |
1.172 |
0.241 |
0.241 |
ns |
966 |
1.861 |
0.063 |
0.063 |
ns |
| Controle |
|
|
Indígena |
|
|
pre |
pos |
896 |
-0.441 |
0.659 |
0.659 |
ns |
966 |
-0.443 |
0.658 |
0.658 |
ns |
| Controle |
|
|
|
|
|
Indígena |
Branca |
447 |
2.687 |
0.007 |
0.022 |
* |
482 |
2.857 |
0.004 |
0.013 |
* |
| Controle |
|
|
|
|
|
Parda |
Branca |
447 |
1.334 |
0.183 |
0.549 |
ns |
482 |
1.348 |
0.178 |
0.535 |
ns |
| Controle |
|
|
|
|
|
Parda |
Indígena |
447 |
-2.163 |
0.031 |
0.093 |
ns |
482 |
-2.350 |
0.019 |
0.057 |
ns |
| Controle |
|
|
Parda |
|
|
pre |
pos |
896 |
1.090 |
0.276 |
0.276 |
ns |
966 |
2.002 |
0.046 |
0.046 |
* |
| Experimental |
|
|
Branca |
|
|
pre |
pos |
896 |
-0.019 |
0.985 |
0.985 |
ns |
966 |
0.377 |
0.707 |
0.707 |
ns |
| Experimental |
|
|
Indígena |
|
|
pre |
pos |
896 |
-0.463 |
0.644 |
0.644 |
ns |
966 |
-0.465 |
0.642 |
0.642 |
ns |
| Experimental |
|
|
|
|
|
Indígena |
Branca |
447 |
1.060 |
0.290 |
0.870 |
ns |
482 |
1.201 |
0.230 |
0.691 |
ns |
| Experimental |
|
|
|
|
|
Parda |
Branca |
447 |
-0.308 |
0.759 |
1.000 |
ns |
482 |
-0.313 |
0.755 |
1.000 |
ns |
| Experimental |
|
|
|
|
|
Parda |
Indígena |
447 |
-1.314 |
0.190 |
0.569 |
ns |
482 |
-1.461 |
0.145 |
0.434 |
ns |
| Experimental |
|
|
Parda |
|
|
pre |
pos |
896 |
0.163 |
0.870 |
0.870 |
ns |
966 |
0.915 |
0.360 |
0.360 |
ns |
|
|
|
Branca |
|
|
Controle |
Experimental |
447 |
-2.442 |
0.015 |
0.015 |
* |
482 |
-2.420 |
0.016 |
0.016 |
* |
|
|
|
Indígena |
|
|
Controle |
Experimental |
447 |
0.274 |
0.784 |
0.784 |
ns |
482 |
0.354 |
0.723 |
0.723 |
ns |
|
|
|
Parda |
|
|
Controle |
Experimental |
447 |
-1.911 |
0.057 |
0.057 |
ns |
482 |
-1.857 |
0.064 |
0.064 |
ns |
| Controle |
|
|
|
6 ano |
|
pre |
pos |
2096 |
1.733 |
0.083 |
0.083 |
ns |
2226 |
2.226 |
0.026 |
0.026 |
* |
| Controle |
|
|
|
7 ano |
|
pre |
pos |
2096 |
2.740 |
0.006 |
0.006 |
** |
2226 |
3.047 |
0.002 |
0.002 |
** |
| Controle |
|
|
|
8 ano |
|
pre |
pos |
2096 |
0.783 |
0.433 |
0.433 |
ns |
2226 |
1.066 |
0.287 |
0.287 |
ns |
| Controle |
|
|
|
9 ano |
|
pre |
pos |
2096 |
-0.131 |
0.896 |
0.896 |
ns |
2226 |
0.246 |
0.806 |
0.806 |
ns |
| Controle |
|
|
|
|
|
6 ano |
7 ano |
1047 |
1.644 |
0.100 |
0.602 |
ns |
1112 |
0.755 |
0.451 |
1.000 |
ns |
| Controle |
|
|
|
|
|
6 ano |
8 ano |
1047 |
-2.433 |
0.015 |
0.091 |
ns |
1112 |
-2.513 |
0.012 |
0.073 |
ns |
| Controle |
|
|
|
|
|
6 ano |
9 ano |
1047 |
-5.074 |
0.000 |
0.000 |
**** |
1112 |
-4.792 |
0.000 |
0.000 |
**** |
| Controle |
|
|
|
|
|
7 ano |
8 ano |
1047 |
-3.939 |
0.000 |
0.001 |
*** |
1112 |
-3.235 |
0.001 |
0.008 |
** |
| Controle |
|
|
|
|
|
7 ano |
9 ano |
1047 |
-6.756 |
0.000 |
0.000 |
**** |
1112 |
-5.654 |
0.000 |
0.000 |
**** |
| Controle |
|
|
|
|
|
8 ano |
9 ano |
1047 |
-2.300 |
0.022 |
0.130 |
ns |
1112 |
-1.937 |
0.053 |
0.318 |
ns |
| Experimental |
|
|
|
6 ano |
|
pre |
pos |
2096 |
1.773 |
0.076 |
0.076 |
ns |
2226 |
2.498 |
0.013 |
0.013 |
* |
| Experimental |
|
|
|
7 ano |
|
pre |
pos |
2096 |
0.944 |
0.345 |
0.345 |
ns |
2226 |
1.665 |
0.096 |
0.096 |
ns |
| Experimental |
|
|
|
8 ano |
|
pre |
pos |
2096 |
-0.962 |
0.336 |
0.336 |
ns |
2226 |
-0.986 |
0.324 |
0.324 |
ns |
| Experimental |
|
|
|
9 ano |
|
pre |
pos |
2096 |
-1.132 |
0.258 |
0.258 |
ns |
2226 |
-0.596 |
0.551 |
0.551 |
ns |
| Experimental |
|
|
|
|
|
6 ano |
7 ano |
1047 |
-2.574 |
0.010 |
0.061 |
ns |
1112 |
-2.506 |
0.012 |
0.074 |
ns |
| Experimental |
|
|
|
|
|
6 ano |
8 ano |
1047 |
-6.514 |
0.000 |
0.000 |
**** |
1112 |
-6.849 |
0.000 |
0.000 |
**** |
| Experimental |
|
|
|
|
|
6 ano |
9 ano |
1047 |
-7.114 |
0.000 |
0.000 |
**** |
1112 |
-6.535 |
0.000 |
0.000 |
**** |
| Experimental |
|
|
|
|
|
7 ano |
8 ano |
1047 |
-4.242 |
0.000 |
0.000 |
*** |
1112 |
-4.734 |
0.000 |
0.000 |
**** |
| Experimental |
|
|
|
|
|
7 ano |
9 ano |
1047 |
-4.930 |
0.000 |
0.000 |
**** |
1112 |
-4.449 |
0.000 |
0.000 |
**** |
| Experimental |
|
|
|
|
|
8 ano |
9 ano |
1047 |
-0.688 |
0.492 |
1.000 |
ns |
1112 |
0.281 |
0.779 |
1.000 |
ns |
|
|
|
|
6 ano |
|
Controle |
Experimental |
1047 |
-0.249 |
0.803 |
0.803 |
ns |
1112 |
0.121 |
0.904 |
0.904 |
ns |
|
|
|
|
7 ano |
|
Controle |
Experimental |
1047 |
-4.500 |
0.000 |
0.000 |
**** |
1112 |
-3.134 |
0.002 |
0.002 |
** |
|
|
|
|
8 ano |
|
Controle |
Experimental |
1047 |
-3.348 |
0.001 |
0.001 |
*** |
1112 |
-3.222 |
0.001 |
0.001 |
** |
|
|
|
|
9 ano |
|
Controle |
Experimental |
1047 |
-1.694 |
0.091 |
0.091 |
ns |
1112 |
-1.070 |
0.285 |
0.285 |
ns |
| Controle |
|
|
|
|
1st quintile |
pre |
pos |
2014 |
1.024 |
0.306 |
0.306 |
ns |
2222 |
0.622 |
0.534 |
0.534 |
ns |
| Controle |
|
|
|
|
2nd quintile |
pre |
pos |
2014 |
3.105 |
0.002 |
0.002 |
** |
2222 |
2.906 |
0.004 |
0.004 |
** |
| Controle |
|
|
|
|
3rd quintile |
pre |
pos |
2014 |
4.794 |
0.000 |
0.000 |
**** |
2222 |
5.243 |
0.000 |
0.000 |
**** |
| Controle |
|
|
|
|
4th quintile |
pre |
pos |
2014 |
3.089 |
0.002 |
0.002 |
** |
2222 |
3.992 |
0.000 |
0.000 |
**** |
| Controle |
|
|
|
|
5th quintile |
pre |
pos |
2014 |
2.704 |
0.007 |
0.007 |
** |
2222 |
3.512 |
0.000 |
0.000 |
*** |
| Controle |
|
|
|
|
|
1st quintile |
2nd quintile |
1006 |
1.565 |
0.118 |
1.000 |
ns |
1110 |
2.058 |
0.040 |
0.398 |
ns |
| Controle |
|
|
|
|
|
1st quintile |
3rd quintile |
1006 |
2.102 |
0.036 |
0.358 |
ns |
1110 |
3.034 |
0.002 |
0.025 |
* |
| Controle |
|
|
|
|
|
1st quintile |
4th quintile |
1006 |
-0.118 |
0.906 |
1.000 |
ns |
1110 |
1.355 |
0.176 |
1.000 |
ns |
| Controle |
|
|
|
|
|
1st quintile |
5th quintile |
1006 |
-0.370 |
0.711 |
1.000 |
ns |
1110 |
1.061 |
0.289 |
1.000 |
ns |
| Controle |
|
|
|
|
|
2nd quintile |
3rd quintile |
1006 |
1.201 |
0.230 |
1.000 |
ns |
1110 |
1.940 |
0.053 |
0.527 |
ns |
| Controle |
|
|
|
|
|
2nd quintile |
4th quintile |
1006 |
-1.486 |
0.138 |
1.000 |
ns |
1110 |
0.038 |
0.970 |
1.000 |
ns |
| Controle |
|
|
|
|
|
2nd quintile |
5th quintile |
1006 |
-1.515 |
0.130 |
1.000 |
ns |
1110 |
0.000 |
1.000 |
1.000 |
ns |
| Controle |
|
|
|
|
|
3rd quintile |
4th quintile |
1006 |
-3.359 |
0.001 |
0.008 |
** |
1110 |
-2.364 |
0.018 |
0.183 |
ns |
| Controle |
|
|
|
|
|
3rd quintile |
5th quintile |
1006 |
-3.197 |
0.001 |
0.014 |
* |
1110 |
-1.923 |
0.055 |
0.548 |
ns |
| Controle |
|
|
|
|
|
4th quintile |
5th quintile |
1006 |
-0.703 |
0.482 |
1.000 |
ns |
1110 |
-0.057 |
0.954 |
1.000 |
ns |
| Experimental |
|
|
|
|
1st quintile |
pre |
pos |
2014 |
-1.416 |
0.157 |
0.157 |
ns |
2222 |
-1.406 |
0.160 |
0.160 |
ns |
| Experimental |
|
|
|
|
2nd quintile |
pre |
pos |
2014 |
0.824 |
0.410 |
0.410 |
ns |
2222 |
1.055 |
0.292 |
0.292 |
ns |
| Experimental |
|
|
|
|
3rd quintile |
pre |
pos |
2014 |
0.152 |
0.879 |
0.879 |
ns |
2222 |
2.465 |
0.014 |
0.014 |
* |
| Experimental |
|
|
|
|
4th quintile |
pre |
pos |
2014 |
-0.569 |
0.569 |
0.569 |
ns |
2222 |
1.583 |
0.114 |
0.114 |
ns |
| Experimental |
|
|
|
|
5th quintile |
pre |
pos |
2014 |
1.120 |
0.263 |
0.263 |
ns |
2222 |
2.436 |
0.015 |
0.015 |
* |
| Experimental |
|
|
|
|
|
1st quintile |
2nd quintile |
1006 |
0.882 |
0.378 |
1.000 |
ns |
1110 |
1.705 |
0.088 |
0.884 |
ns |
| Experimental |
|
|
|
|
|
1st quintile |
3rd quintile |
1006 |
-0.005 |
0.996 |
1.000 |
ns |
1110 |
1.916 |
0.056 |
0.556 |
ns |
| Experimental |
|
|
|
|
|
1st quintile |
4th quintile |
1006 |
-0.482 |
0.630 |
1.000 |
ns |
1110 |
1.324 |
0.186 |
1.000 |
ns |
| Experimental |
|
|
|
|
|
1st quintile |
5th quintile |
1006 |
-0.099 |
0.921 |
1.000 |
ns |
1110 |
1.342 |
0.180 |
1.000 |
ns |
| Experimental |
|
|
|
|
|
2nd quintile |
3rd quintile |
1006 |
-1.014 |
0.311 |
1.000 |
ns |
1110 |
1.008 |
0.314 |
1.000 |
ns |
| Experimental |
|
|
|
|
|
2nd quintile |
4th quintile |
1006 |
-1.503 |
0.133 |
1.000 |
ns |
1110 |
0.462 |
0.644 |
1.000 |
ns |
| Experimental |
|
|
|
|
|
2nd quintile |
5th quintile |
1006 |
-0.722 |
0.470 |
1.000 |
ns |
1110 |
0.750 |
0.453 |
1.000 |
ns |
| Experimental |
|
|
|
|
|
3rd quintile |
4th quintile |
1006 |
-0.991 |
0.322 |
1.000 |
ns |
1110 |
-0.437 |
0.662 |
1.000 |
ns |
| Experimental |
|
|
|
|
|
3rd quintile |
5th quintile |
1006 |
-0.183 |
0.855 |
1.000 |
ns |
1110 |
0.248 |
0.804 |
1.000 |
ns |
| Experimental |
|
|
|
|
|
4th quintile |
5th quintile |
1006 |
0.707 |
0.480 |
1.000 |
ns |
1110 |
0.730 |
0.466 |
1.000 |
ns |
|
|
|
|
|
1st quintile |
Controle |
Experimental |
1006 |
-2.176 |
0.030 |
0.030 |
* |
1110 |
-1.642 |
0.101 |
0.101 |
ns |
|
|
|
|
|
2nd quintile |
Controle |
Experimental |
1006 |
-2.614 |
0.009 |
0.009 |
** |
1110 |
-2.002 |
0.046 |
0.046 |
* |
|
|
|
|
|
3rd quintile |
Controle |
Experimental |
1006 |
-4.957 |
0.000 |
0.000 |
**** |
1110 |
-3.647 |
0.000 |
0.000 |
*** |
|
|
|
|
|
4th quintile |
Controle |
Experimental |
1006 |
-3.161 |
0.002 |
0.002 |
** |
1110 |
-1.944 |
0.052 |
0.052 |
ns |
|
|
|
|
|
5th quintile |
Controle |
Experimental |
1006 |
-1.453 |
0.147 |
0.147 |
ns |
1110 |
-0.974 |
0.330 |
0.330 |
ns |
EMMS Table Comparison
df <- do.call(plyr::rbind.fill, lemms)
df[["N-N'"]] <- df[["N"]] - df[["N'"]]
df <- df[,c(names(lfatores)[names(lfatores) %in% colnames(df)],
names(df)[!names(df) %in% names(lfatores)])]
| Controle |
|
|
|
|
|
424 |
37.351 |
0.975 |
35.432 |
1.018 |
35.112 |
0.358 |
34.409 |
35.815 |
485 |
37.631 |
0.871 |
33.816 |
0.953 |
33.348 |
0.480 |
32.405 |
34.290 |
-61 |
| Experimental |
|
|
|
|
|
557 |
36.770 |
0.741 |
37.230 |
0.777 |
37.473 |
0.313 |
36.860 |
38.087 |
636 |
36.748 |
0.670 |
35.376 |
0.749 |
35.733 |
0.419 |
34.910 |
36.556 |
-79 |
| Controle |
F |
|
|
|
|
208 |
40.635 |
1.278 |
38.615 |
1.351 |
35.106 |
0.503 |
34.119 |
36.093 |
247 |
40.652 |
1.098 |
36.567 |
1.265 |
33.273 |
0.676 |
31.945 |
34.600 |
-39 |
| Controle |
M |
|
|
|
|
211 |
33.934 |
1.457 |
32.393 |
1.517 |
35.389 |
0.499 |
34.410 |
36.368 |
238 |
34.496 |
1.332 |
30.962 |
1.410 |
33.427 |
0.688 |
32.077 |
34.776 |
-27 |
| Experimental |
F |
|
|
|
|
276 |
39.623 |
1.053 |
40.272 |
1.123 |
37.744 |
0.436 |
36.889 |
38.600 |
319 |
39.408 |
0.941 |
38.138 |
1.086 |
36.008 |
0.594 |
34.842 |
37.173 |
-43 |
| Experimental |
M |
|
|
|
|
279 |
34.082 |
1.030 |
34.484 |
1.053 |
37.335 |
0.434 |
36.483 |
38.187 |
317 |
34.073 |
0.931 |
32.596 |
1.011 |
35.457 |
0.597 |
34.285 |
36.628 |
-38 |
| Controle |
|
Rural |
|
|
|
228 |
35.956 |
1.330 |
34.978 |
1.426 |
35.358 |
0.547 |
34.284 |
36.432 |
243 |
36.181 |
1.259 |
34.243 |
1.380 |
34.462 |
0.669 |
33.149 |
35.775 |
-15 |
| Controle |
|
Urbana |
|
|
|
101 |
39.743 |
1.823 |
31.099 |
2.044 |
27.763 |
0.824 |
26.145 |
29.380 |
109 |
39.468 |
1.727 |
29.835 |
1.951 |
26.939 |
1.001 |
24.975 |
28.903 |
-8 |
| Experimental |
|
Rural |
|
|
|
260 |
34.215 |
1.113 |
34.777 |
1.186 |
36.865 |
0.514 |
35.857 |
37.874 |
284 |
34.592 |
1.036 |
33.627 |
1.141 |
35.352 |
0.620 |
34.136 |
36.569 |
-24 |
| Experimental |
|
Urbana |
|
|
|
151 |
38.318 |
1.389 |
36.099 |
1.501 |
34.161 |
0.673 |
32.840 |
35.483 |
167 |
37.850 |
1.287 |
34.108 |
1.462 |
32.745 |
0.807 |
31.160 |
34.330 |
-16 |
| Controle |
|
|
Branca |
|
|
45 |
41.378 |
2.626 |
36.600 |
3.007 |
30.951 |
1.399 |
28.202 |
33.701 |
50 |
41.460 |
2.396 |
34.300 |
2.902 |
29.123 |
1.619 |
25.941 |
32.304 |
-5 |
| Controle |
|
|
Indígena |
|
|
11 |
42.000 |
5.215 |
45.636 |
6.009 |
39.393 |
2.820 |
33.851 |
44.935 |
11 |
42.000 |
5.215 |
45.636 |
6.009 |
39.964 |
3.439 |
33.206 |
46.722 |
0 |
| Controle |
|
|
Parda |
|
|
150 |
36.320 |
1.578 |
33.887 |
1.695 |
33.075 |
0.763 |
31.576 |
34.574 |
162 |
36.741 |
1.485 |
32.463 |
1.634 |
31.613 |
0.895 |
29.854 |
33.373 |
-12 |
| Experimental |
|
|
Branca |
|
|
58 |
34.517 |
2.651 |
34.586 |
2.746 |
35.499 |
1.226 |
33.088 |
37.909 |
61 |
34.623 |
2.526 |
33.311 |
2.713 |
34.404 |
1.459 |
31.537 |
37.270 |
-3 |
| Experimental |
|
|
Indígena |
|
|
15 |
27.067 |
4.406 |
30.333 |
4.574 |
38.371 |
2.420 |
33.616 |
43.126 |
15 |
27.067 |
4.406 |
30.333 |
4.574 |
38.355 |
2.952 |
32.554 |
44.155 |
0 |
| Experimental |
|
|
Parda |
|
|
175 |
33.851 |
1.343 |
33.514 |
1.460 |
35.064 |
0.707 |
33.674 |
36.453 |
190 |
34.253 |
1.272 |
32.447 |
1.412 |
33.879 |
0.828 |
32.253 |
35.505 |
-15 |
| Controle |
|
|
|
6 ano |
|
126 |
28.444 |
1.766 |
24.619 |
1.828 |
32.399 |
0.756 |
30.915 |
33.882 |
134 |
28.993 |
1.687 |
24.231 |
1.741 |
31.423 |
0.889 |
29.678 |
33.168 |
-8 |
| Controle |
|
|
|
7 ano |
|
127 |
34.024 |
1.632 |
28.000 |
1.773 |
30.663 |
0.744 |
29.204 |
32.123 |
141 |
34.716 |
1.503 |
28.362 |
1.739 |
30.495 |
0.856 |
28.815 |
32.175 |
-14 |
| Controle |
|
|
|
8 ano |
|
86 |
42.430 |
1.785 |
40.337 |
1.933 |
35.292 |
0.906 |
33.514 |
37.069 |
89 |
42.584 |
1.737 |
39.787 |
1.897 |
34.967 |
1.081 |
32.846 |
37.087 |
-3 |
| Controle |
|
|
|
9 ano |
|
116 |
46.612 |
1.611 |
46.914 |
1.537 |
38.034 |
0.790 |
36.483 |
39.584 |
121 |
46.950 |
1.557 |
46.397 |
1.495 |
37.718 |
0.940 |
35.874 |
39.562 |
-5 |
| Experimental |
|
|
|
6 ano |
|
150 |
28.607 |
1.324 |
25.020 |
1.367 |
32.651 |
0.694 |
31.288 |
34.013 |
159 |
29.000 |
1.265 |
24.094 |
1.329 |
31.279 |
0.819 |
29.673 |
32.885 |
-9 |
| Experimental |
|
|
|
7 ano |
|
170 |
36.294 |
1.168 |
34.500 |
1.284 |
35.081 |
0.642 |
33.822 |
36.340 |
187 |
36.540 |
1.089 |
33.524 |
1.254 |
34.046 |
0.743 |
32.588 |
35.503 |
-17 |
| Experimental |
|
|
|
8 ano |
|
141 |
39.248 |
1.525 |
41.255 |
1.600 |
39.128 |
0.705 |
37.744 |
40.512 |
143 |
39.000 |
1.516 |
41.042 |
1.604 |
39.390 |
0.850 |
37.722 |
41.057 |
-2 |
| Experimental |
|
|
|
9 ano |
|
140 |
43.143 |
1.354 |
45.514 |
1.288 |
39.815 |
0.713 |
38.416 |
41.215 |
147 |
43.204 |
1.307 |
44.422 |
1.331 |
39.054 |
0.845 |
37.397 |
40.711 |
-7 |
| Controle |
|
|
|
|
1st quintile |
112 |
9.152 |
0.522 |
8.205 |
0.750 |
34.585 |
1.783 |
31.086 |
38.083 |
113 |
9.230 |
0.523 |
8.522 |
0.808 |
37.046 |
2.325 |
32.484 |
41.608 |
-1 |
| Controle |
|
|
|
|
2nd quintile |
51 |
24.392 |
0.530 |
20.137 |
1.288 |
32.089 |
1.322 |
29.495 |
34.682 |
59 |
24.542 |
0.492 |
19.966 |
1.686 |
32.835 |
1.666 |
29.566 |
36.104 |
-8 |
| Controle |
|
|
|
|
3rd quintile |
42 |
38.905 |
0.489 |
31.667 |
1.800 |
29.879 |
1.216 |
27.493 |
32.265 |
54 |
38.815 |
0.409 |
30.185 |
2.082 |
28.463 |
1.437 |
25.644 |
31.282 |
-12 |
| Controle |
|
|
|
|
4th quintile |
125 |
47.544 |
0.223 |
44.840 |
0.850 |
34.874 |
0.932 |
33.046 |
36.702 |
135 |
47.370 |
0.222 |
43.215 |
0.978 |
32.746 |
1.190 |
30.411 |
35.080 |
-10 |
| Controle |
|
|
|
|
5th quintile |
116 |
58.819 |
0.505 |
56.362 |
0.792 |
35.722 |
1.463 |
32.851 |
38.593 |
124 |
58.621 |
0.482 |
54.806 |
0.979 |
32.835 |
1.876 |
29.155 |
36.516 |
-8 |
| Experimental |
|
|
|
|
1st quintile |
108 |
9.602 |
0.522 |
10.935 |
0.788 |
36.889 |
1.765 |
33.425 |
40.352 |
112 |
9.777 |
0.515 |
11.384 |
0.898 |
39.349 |
2.290 |
34.856 |
43.842 |
-4 |
| Experimental |
|
|
|
|
2nd quintile |
101 |
25.842 |
0.347 |
25.040 |
0.976 |
35.619 |
1.016 |
33.625 |
37.613 |
117 |
25.855 |
0.316 |
24.675 |
1.128 |
36.203 |
1.292 |
33.668 |
38.737 |
-16 |
| Experimental |
|
|
|
|
3rd quintile |
116 |
37.371 |
0.301 |
37.233 |
0.859 |
36.898 |
0.729 |
35.467 |
38.328 |
141 |
37.383 |
0.268 |
34.872 |
1.096 |
34.614 |
0.886 |
32.876 |
36.352 |
-25 |
| Experimental |
|
|
|
|
4th quintile |
120 |
46.800 |
0.230 |
47.308 |
0.725 |
38.047 |
0.915 |
36.251 |
39.842 |
132 |
46.697 |
0.217 |
45.030 |
0.924 |
35.250 |
1.166 |
32.963 |
37.537 |
-12 |
| Experimental |
|
|
|
|
5th quintile |
126 |
58.563 |
0.448 |
57.587 |
0.700 |
37.189 |
1.435 |
34.372 |
40.006 |
134 |
58.336 |
0.434 |
55.791 |
0.917 |
34.111 |
1.839 |
30.503 |
37.720 |
-8 |